4、unittest举例? 百度搜索为例: 1、输入正确关键字---->正常搜索 2、组合关键字--->正常搜索 3、超出38个汉字要被截断 Unittest 运行结果: . : 表示运行成功 E: 表示出现error F: 表示出现fail,可能是你期望失败 S:表示忽略该用例,不执行 skip unittest运行环境有两种: python环境 unittest环境 Unittest: TestCase : 用来编写测试用例,要求以test开头 assertXXX: 提供的断言 TestSuite: 用来创建套件,控件测试用例的执行数量 Skip 装饰器: 用来忽略用例执行 ① @unittest.skip(reason):无条件跳过测试,reason描述为什么跳过测试 ② @unittest.skipIf(condition,reason):condititon为true时跳过测试 假设某个功能 部分地区可以使用,其它地区不使用,可以不执行这个用例 ③ @unittest.skipUnless(condition,reason):condition不是true时跳过测试 ④ @unittest.expected failure:使用@unittest.expectedFailure装饰器,如果test失败了 file:///C:/Users/111/AppData/Local/Temp/ksohtml22196/wps1.jpg file:///C:/Users/111/AppData/Local/Temp/ksohtml22196/wps2.jpg 优化测试报告: 1、优化报告的名字:希望每一次的测试报告都能被保留 报告名字+时间 2、优化测试报告中用例的名字:把用例函数都写上中文注释 公司写代码: 1、代码复用 2、代码要方便维护 3、代码要具有一定的扩展性 达到的目标: 1、批量执行用例: 编写用例 testcase 使用 unitttest中testsuite+discover 装载用例 使用skip进行用例忽略 2、提供测试报告 HTMLTestRunner HTMLTestRunnerNew 3、定时任务,邮件提醒 Jenkins---》持续集成 定时任务:Build Triggers 构建触发器 Poll SCM: * * * * * 分时日月周 20 20 * * * 每天晚上的8点20分运行 20 20 4 * * 每个月的4号晚上8点20分运行 4、软件的运行日志: logging 5、出错截图: try:
self.assertIn('seleniumXXX', driver.title)# 断言a在b中
except Exception as e: driver.get_screenshot_as_file(images+self.test_search_02.__doc__+'.png') raise 6、配置文件:一般设置软件的参数:比如用户名,密码,文件路径,端口等 类型:ini,yaml,xml,json 7、元素和代码分开 所有的元素识别都到一个文件中--->元素组装成功能--->针对功能写用例--分离数据 暂时没有完成部分: 1、部分用例执行出错----重跑 2、元素没有存入文件中 3、数据还是写在代码中的 4、如果有新功能要进行自动化测试,要增加的代码比较多 作业: 完成两个用例文件共5个用例: 1、商品添加:写两个用例 2、商品删除 要求要写断言,出错截图,有测试报告 Svn 是否能用?
|