⾃动化测试 概念
⾃动化⾃动化概念⾃动的代替⼈的⾏为完成操作。 ⾃动化在⽣活中处处可⻅⾃动化的主要⽬的就是⽤来进⾏回归测试。回归测试软件有多个版本需要进⾏功能的整体回归。为了避免新增功能影响到历史的功能需要进⾏功能的回归。常⻅⾯试题1.⾃动化测试能够取代⼈⼯测试吗⾃动化测试不⼀定⽐⼈⼯测试更能保障系统的可靠性⾃动化测试是测试⼈员⼿⼯编写后续如果有 功能的变更⾃动化也需要进⾏不定期的维护和更新。2.⾃动化测试可以⼤幅度降低⼯作量错误 坑“⼀定程度上”和“⼤幅度”的表达⽅式也需要注意 tips测试笔试中的选择题尽量不要选择说的太死或者太绝对的选项⾃动化分类• 讲⾃动化分类的⽬的是避免同学们将⾃动化混淆同时避免讲不同的⾃动化如何实施造成的课时 压⼒• 很多同学经常听到⾃动化这个词但是很容易误以为⾃动化就是⼀个东西⾃动化是个统称同 学们可以理解为我们常说的吃⽠这样的表达⽅式和⾃动化是⼀样的吃⽠可以是吃西⽠吃哈密 ⽠吃⾹⽠⾃动化也包含多种如接⼝⾃动化web⾃动化移动端⾃动化等等...• 主要介绍各测试分类为什么需要实施⾃动化⽬的和意义接⼝⾃动化什么是接⼝⾃动化测试 为什么要做解决了什么问题⽬的是什么UI⾃动化UI测试也称为界⾯测试常⻅的UI⾃动化测试包含web⾃动化测试、移动端⾃动化测试等等。• 移动端⾃动化测试什么是移动端⾃动化测试为什么要做解决了什么问题⽬的是什么移动端顾名思义就是部署在⼿机上的应⽤程序。移动端⾃动化测试主要测试程序部署在⼿机上能 否按照预期的结果的进⾏操作。移动端测试通常不是将程序部署在移动端上进⾏测试⽽是需要安装模拟器在电脑上编写⾃动化测 试脚本代码对模拟器上的软件进⾏操作。• web⾃动化测试什么是web⾃动化测试 为什么要做解决了什么问题⽬的是什么如何进⾏百度搜索通常来说我们⼿动进⾏百度搜索的步骤如下web⾃动化能够代替我们⾃动的执⾏。⾃动化测试⾦字塔⾃动化的类型⾮常多那么到底哪⼀种是最好的哪⼀种测试的收益会更佳 这⾥我们介绍测试圈内⾮常著名的⾃动化测试⾦字塔理想的⾃动化测试⾦字塔表达了⾃动化测试的理想情况利⽤较少的时间和精⼒在单元测试上就能够 发现更多有效的问题。 然后实际上在企业中⾃动化往往是“冰淇淋蛋筒反模式”。⾃动化需要⼤量的初始投资找到“突破点”与⼿动测试相⽐我们开始看到它对⻓期成本产⽣的 积极影响也能够清楚这两种测试活动都是完全兼容产⽣短期和⻓期利益。web⾃动化测试学到这⾥希望同学们对⾃动化测试能够有⼀定的了解。然后实际在企业中我们需要对某⼀个特定 的软件进⾏⾃动化的实施包含但不限于软件所有界⾯的UI⾃动化测试、所有接⼝的接⼝⾃动化测 试。 接下来我们将正式步⼊web⾃动化测试的学习了解企业中是如何使⽤⼯具来统⼀编写和管理⾃动化 ⽤例。驱动web系统的测试前提是需要打开浏览器通过访问web服务器来对服务器界 ⾯进⾏⼀系列的操作。对于⼿⼯测试来说这⼀系列的操作都需要测试⼈员⼿动的⼀步⼀步的来执 ⾏测试。那么对于⾃动化程序来说程序如何才能打开浏览器并执⾏我们预期的操作流程呢 驱动⼀词应⽤⼴泛同学们都不会陌⽣。 ⻋有了驱动才能够让⻋跑起来。计算机有了驱动程序就可以与设备⽿机摄像头⻨克⻛键盘显⽰器等等设备进⾏通信。程序想要打开web浏览器就需要安装web驱动即WebDriver)WebDriver以本地化⽅式驱动浏览 器。安装驱动管理驱动管理WebDriverManager是⼀个开源Java库以完全⾃动化的⽅式对SeleniumWebDriver所需的驱动程 序如chromedriver、geckodriver、msedgedriver等进⾏管理即下载、设置和维护⾃版 本5起WebDriverManager还提供了其他相关功能如发现本地系统中安装的浏览器的能⼒构建 WebDriver对象如ChromeDriver、FirefoxDriver、EdgeDriver等dependency groupIdio.github.bonigarcia/groupId artifactIdwebdrivermanager/artifactId version5.8.0/version scopetest/scope /dependencySelenium接下来就是使⽤selenium来编写web⾃动化测试脚本。 selenium是⼀个web⾃动化测试⼯具selenium中提供了丰富的⽅法供给使⽤者进⾏web⾃动化测 试。⼀个简单的web⾃动化⽰例1安装selenium库dependency groupIdorg.seleniumhq.selenium/groupId artifactIdselenium-java/artifactId version4.0.0/version /dependency2使⽤selenium编写代码public void example_test() { //驱动程序管理的⾃动化 WebDriverManager.chromedriver().setup(); ChromeOptions options new ChromeOptions(); //允许访问所有链接 options.addArguments(--remote-allow-origins*); //1、打开浏览器 WebDriver driver new ChromeDriver(options); //2.输⼊百度⽹址:https://www.baidu.com driver.get(https://www.baidu.com); //3、找到输⼊框并输⼊“迪丽热巴” driver.findElement(By.xpath(//*[id\kw\])).sendKeys(迪丽热巴); //4、找到“百度⼀下”按钮并点击 driver.findElement(By.xpath(//*[id\su\])).click(); //5、关闭浏览器 driver.quit(); }selenium驱动浏览器的⼯作原理实现web⾃动化测试需要浏览器、浏览器驱动、selenium⾃动化脚本。这三者是如何交互最终实现 web的⾃动化测试1. 通过selenium编写的⾃动化脚本代码中在ChromeDriverService中创建⼀个服务2. 通过创建好的服务打开webdriver安装在本地的驱动服务IP为localhostPORT为 ChromeDriverService中创建的端⼝号该服务地址为selenium向webdriver发送请求的服务地 址。3. 向浏览器驱动程序发送HTTP请求浏览器驱动程序解析请求打开浏览器并获得sessionid如 果再次对浏览器操作需携带此id4. 打开浏览器后所有的selenium的操作(访问地址查找元素等)均通过创建好的服务链接到 webdriver然后使⽤execute发送请求5. 驱动收到请求并对请求进⾏解析转成浏览器能够解析的脚本并发送给浏览器浏览器通过请求的 内容执⾏对应动作6. 浏览器再把执⾏的动作结果通过浏览器驱动程序返回给测试脚本驱动需要接收、解析请求发送请求给浏览器那么驱动到底是什么样的⻆⾊呢验证⽅式1执⾏selenium编写的⾃动化脚本代码中可以在终端看到创建的驱动服务地址。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2499200.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!