Believe in yourself.

上一页 1 ··· 4 5 6 7 8 9 10 11 下一页
摘要: 我们知道setUp()和setDown()的作用是在每条测试用例执行前准备测试环境以及用例测试结束后恢复测试环境,如果我们执行的测试类下所有测试用例的环境准备和环境复原的操作都是一样的,那么我们就没必要每条测试用例执行前都执行一次setUp()和setDown()的操作。在运行测试类前只执行一次环境 阅读全文
posted @ 2018-06-06 17:25 eastonliu 阅读(1242) 评论(0) 推荐(0) 编辑
摘要: 前面我们说了,对于不同文件用例,我们可以通过addTest()把用例加载到一个测试套件(TestSuite)来统一执行,对于少量的文件这样做没问题,但是如果有几十上百个用例文件,这样做就太浪费时间了。 unittest中的discover()方法可以批量加载用例 start_dir:测试模块名或测试 阅读全文
posted @ 2018-06-06 16:15 eastonliu 阅读(1825) 评论(0) 推荐(0) 编辑
摘要: 在前面一章中示例了如何编写一个简单的测试,但有两个问题: 要解决上面两个问题,我们就要用到测试套件(TestSuite)了 代码: 注:verbosity 参数可以控制输出的错误报告的详细程度,默认是 1;如果设为 0,则不输出每一用例的执行结果;如果设为 2,则输出详细的执行结果 执行结果: 从用 阅读全文
posted @ 2018-06-06 15:16 eastonliu 阅读(18145) 评论(0) 推荐(1) 编辑
摘要: 在执行测试用例时,有时候有些用例是不需要执行的,那我们怎么办呢?难道删除这些用例?那下次执行时如果又需要执行这些用例时,又把它补回来?这样操作就太麻烦了。 unittest提供了一些跳过指定用例的方法 @unittest.skip(reason):强制跳转。reason是跳转原因 @unittest 阅读全文
posted @ 2018-06-06 15:12 eastonliu 阅读(12859) 评论(1) 推荐(6) 编辑
摘要: unittest是python内置的一个单元测试框架,在学习怎么使用它之前,我们先来了解它的一些概念和原理。 Test Case:测试用例,一个TestCase的实例就是一个测试用例。什么是测试用例呢?就是一个完整的测试流程,包括测试前准备环境的搭建(setUp),执行测试代码(run),以及测试后 阅读全文
posted @ 2018-06-05 19:31 eastonliu 阅读(4450) 评论(0) 推荐(3) 编辑
摘要: 我们在用webdriver去操作元素时,先要判断这个元素是否存在,存在才去操作,否则就会报错。 selenium的expected_conditions模块提供了一些判断方法 场景 Expected Conditions的使用场景有2种 直接在断言中使用 与WebDriverWait配合使用,动态等 阅读全文
posted @ 2018-06-04 21:10 eastonliu 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 在WEB测试时,我们会碰到需要输入日期的情况,如果输入框能直接输入,那最好不过了。但是很多时候,输入框是不可输入的,必须的点击日期控件才行。 现在就来聊聊对日期控件的两种操作方法,我们以12306网站订票页为例 一、点击日期控件 常规方法,先定位到日期控件,再选择日期 代码: 二、修改日期输入框的r 阅读全文
posted @ 2018-06-04 20:45 eastonliu 阅读(1498) 评论(0) 推荐(0) 编辑
摘要: 在用selenium做WEB自动化时,经常会碰到要定位的元素不在当前屏,需要拖动浏览器的滚动条才能显示出来。如果直接去定位的话,一定会报元素不存在的错误。那么怎么对浏览器的滚动条进行操作呢? webdriver不能定位到浏览器的滚动条,只有通过execute_script()来执行js脚本,达到操作 阅读全文
posted @ 2018-06-04 19:55 eastonliu 阅读(805) 评论(0) 推荐(0) 编辑
摘要: 点击文件下载时,弹出的那个框,webdriver是定位不到的,只有通过第三方工具或方法来操作 一、通过PyUserInput模拟键盘按键下载 PyUserInput是模拟鼠标和键盘的一个模块,替代了python2 中的SendKeys模块。 需要先安装: 如果用的是python3 32位版本,直接通 阅读全文
posted @ 2018-06-04 17:18 eastonliu 阅读(879) 评论(0) 推荐(0) 编辑
摘要: 装饰器就是一个闭包,它的主要作用是在不改变原函数的基础上对原函数功能进行扩展。 我们先来写一个简单的函数: 现在我们要对这个函数加一些功能,比如说打印这个函数的执行时间 有人说,这还不简单啊,直接修改foo函数呢,确实,这是最简单的一种方法。但是在我们实际工作中,有时候是不能对调用的函数进行修改的, 阅读全文
posted @ 2018-06-03 18:23 eastonliu 阅读(257) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 下一页