摘要: import unittestfrom Report import HTMLTestRunnerfrom selenium import webdriverfrom selenium.webdriver.common.keys import Keysclass TestCase01(unittest 阅读全文
posted @ 2020-02-10 20:30 干it的小张 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 大家都知道,input框中的值,通过取text是取不到的,那么怎么办呢? 这里分享三个方法。 import time from selenium import webdriver driver = webdriver.Chrome() try: driver.get('https://www.bai 阅读全文
posted @ 2020-02-10 20:20 干it的小张 阅读(5082) 评论(0) 推荐(0) 编辑
摘要: 现在不少大网站有对selenium采取了监测机制。比如正常情况下我们用浏览器访问淘宝等网站的 window.navigator.webdriver的值为 undefined。而使用selenium访问则该值为true。那么如何解决这个问题呢? 只需要设置Chromedriver的启动参数即可解决问题 阅读全文
posted @ 2020-02-10 20:18 干it的小张 阅读(265) 评论(0) 推荐(0) 编辑
摘要: About 重新认识alert首先,不是所有的alert都能叫做alert框。JavaScript中,关于消息提示框的方法有三个(虽然都跟alert差不多): alert(message)方法用于显示带有一条指定消息和一个 OK 按钮的警告框。 confirm(message)方法用于显示一个带有指 阅读全文
posted @ 2020-02-10 20:16 干it的小张 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 为什么需要等待 当进行自动化测试的时候: from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.baidu.com") driver.find_element_by_id("kw").se 阅读全文
posted @ 2020-02-10 20:13 干it的小张 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 在WebDriver中,关于鼠标相关操作的方法都封装在ActionChains类中。 我们来看看ActionChains类都提供了哪些鼠标操作的方法: MethodDescription click(on_element=None) 鼠标左键单击 click_and_hold(on_element= 阅读全文
posted @ 2020-02-10 20:05 干it的小张 阅读(125) 评论(0) 推荐(0) 编辑
摘要: import timefrom selenium import webdriverdriver = webdriver.Chrome()driver.get('https://www.cnblogs.com/Neeo/articles/11002003.html')time.sleep(3)for 阅读全文
posted @ 2020-02-10 19:45 干it的小张 阅读(146) 评论(0) 推荐(0) 编辑
摘要: from selenium import webdriverfrom selenium.webdriver.common.by import Bydriver = webdriver.Firefox()driver.get('https://www.baidu.com/')driver.find_e 阅读全文
posted @ 2020-02-10 18:32 干it的小张 阅读(891) 评论(0) 推荐(0) 编辑
摘要: 由结果可以总结,verbosity有3种的错误信息状态提示报告: 0,静默模式,对于测试结果给予简单提示。 1,默认模式,与静默模式类似,只是在每个成功的用例前面有个.每个失败的用例前面有个F,跳过的用例有个S。 2,详细模式,测试结果会显示每个用例的所有相关的信息。 切记,只有0、1、2三种状态。 阅读全文
posted @ 2020-02-10 18:12 干it的小张 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 该discover方法接收三个参数: start_dir:要测试的模块名或者测试用例的目录。 pattern="test*.py":表示用例文件名的匹配原则,默认匹配以test开头的文件名,星号表示后续的多个字符。 top_level_dir=None:测试模块的顶层目录,如果没有顶层目录,默认为N 阅读全文
posted @ 2020-02-10 18:09 干it的小张 阅读(609) 评论(0) 推荐(0) 编辑
摘要: 场景: 在测试类中,有多个测试用例,在每一个测试用例执行前后,要做一些操作。 另外,还有在测试类中,所有用例执行之前要做一些初始化的操作,在所有用例执行之后,要做一的收尾的操作。 import unittestclass MyTestCase(unittest.TestCase): @classme 阅读全文
posted @ 2020-02-10 18:06 干it的小张 阅读(225) 评论(0) 推荐(0) 编辑
摘要: makeSuite执行顺序: 创建容器对象,并且将用例添加到容器中 找个人去执行容器中的用例,这个人我们称为执行器 makeSuite容器有两种方式添加用例: suite.addTest(用例对象),每次往容器中添加一个 suite.addTests([用例对象1, 用例对象2, ......]), 阅读全文
posted @ 2020-02-10 18:05 干it的小张 阅读(554) 评论(0) 推荐(0) 编辑
摘要: 测试套件,把测试套件理解为容器,容器里面存放是一个个的测试用例,然后执行这个容器中的测试用例。 此时多个用例执行顺序: 首先,收集用例 将用例添加到容器中 找个人去执行容器中的用例,这个人我们称为执行器 TestSuite容器有两种方式添加用例: suite.addTest(用例对象),每次往容器中 阅读全文
posted @ 2020-02-10 18:04 干it的小张 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 断言:执行结果是否符合预期,符合则说明断言成功,如果符合预期,说明断言失败 unittest框架提供了丰富的断言方法供我们使用。 下表列出了最常用的方法: # 第一个示例 import requestsimport unittestclass MyTestCase(unittest.TestCase 阅读全文
posted @ 2020-02-10 16:55 干it的小张 阅读(152) 评论(0) 推荐(0) 编辑
摘要: import requestsimport unittestclass MyTestCase(unittest.TestCase): ''' 类名可以自定义 但必须继承 unittest.TestCase 在测试用例执行之前 要做一些事情或者进行一些初始化的操作 在测试用例执行之后,做一些收尾的操作 阅读全文
posted @ 2020-02-10 16:53 干it的小张 阅读(326) 评论(0) 推荐(0) 编辑
摘要: setup和teardown 有些时候,我们需要在用例执行前后做一些操作,那就: 用例执行之前:setup 用例执行之后:teardown 它们的执行顺序: setup,做一些初始化的操作 测试用例执行 teardown执行,收尾 注意,上述的执行顺序于它们在类中的位置无关,并且这两个方法名是固定的 阅读全文
posted @ 2020-02-10 16:51 干it的小张 阅读(175) 评论(0) 推荐(0) 编辑
摘要: import requestsimport unittestclass MyTestCase(unittest.TestCase): ''' 类名可以自定义 但必须继承 unittest.TestCase ''' def runTest(self): """ runTest就是测试用例 """ re 阅读全文
posted @ 2020-02-10 16:49 干it的小张 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 单元测试,对软件在设计的最小单元中进行正确性检测的测试,将可能存在的错误在最小范围内发现并解决。 对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。总的来说,单元就是人为规定的最小的被测功能 阅读全文
posted @ 2020-02-10 16:47 干it的小张 阅读(2233) 评论(1) 推荐(0) 编辑