python的unittest和pytest


去年自覺APPium自動化的時候有去看下unittest框架如何使用,也應用到了adroid APP Appium 自動化中,但最后並沒有應用到實際工作中,也因要做功能測試並廢棄了自動化的學習。 記得那時搞不清楚為啥有時執行沒有按用例順序執行,還出現每次執行結果都不一樣的情況,當時一臉懵逼啊。。。。今天看到一篇好文就是專門講這些坑的。 原文:https://www.cnblogs.com/xiaohuhu/p/9808653.html 原來python腳本在pycharm中執行有3種模式:unittest,pytest,普通模式 執行結果取決於pycharm所設置的運行模式。 若需要導出測試報告則使用普通運行模式,我python的版本是3.7.1版本的 1.導入HTMLTestRunner模塊 (1)下載地址:http://tungwaiyip.info/software/HTMLTestRunner.html,下載后放到python安裝目錄的Lib目錄下。 (2)在python的IDLE中執行:import HTMLTestRunner 若沒有報錯則可以正常使用, 發現有報錯:大概意思是沒有StringIO這個模塊,查了資料是因為這個插件的腳本是python2的版本,如果要在python3中使用需要修改一些腳本,主要是有寫法不兼容。按文章https://www.cnblogs.com/rechin/p/8615268.html里的修改后保存就可以使用了。 (3)這個插件的關鍵點在: if __name__ == '__main__': print('hello world') # unittest.main() suite = unittest.makeSuite(ALILITest) now = time.strftime('%Y-%m-%d %H_%M_%S',time.localtime()) report_path = "F:\\report\\" + now + '_result.html' fp = open(report_path,'wb') runner = HTMLTestRunner.HTMLTestRunner( stream=fp, title=u'ALILI測試報告', description=u'ALILI用例執行情況:') runner.run(suite) fp.close() runner.run(suite) fp.close() (4)使用普通模式執行完后在相應的目錄生成測試報告 我的運行完成后測試報告中沒有用例的打印內容,看了好一會沒有發現原因 unitest和pytest對比 文章https://www.cnblogs.com/xiaohuhu/p/9804527.html里有講得很清楚了,我自己只是先過一下知道兩者有這些異同點,自己就只用過unittest框架簡單在弄了個流程,出報告。現在看來pytest比unittest優,更適合用在項目中,后面邊學邊研究。 堅持!!!每天學一點!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM