Python自动化测试系列[v1.0.0][辅助工具]

Selenium IDE

Selenium IDE,它是由seleniumhq.org提供的Selenium录制和回放工具, 使用该工具您可以创建测试项目用于分组测试用例,并且可以通过录制功能生成自动化测试脚本,然后进行回放。

Selenium IDE下载

如果您可以访问谷歌商店亦或者您习惯使用Firefox能够访问其扩展组件页面都可以轻松检索到Selenium IDE,然后直接点击“添加至Chrome”或者“添加到Firefox”
在这里插入图片描述
在这里插入图片描述

Selenium IDE录制与回放

首次打开该工具的时候,会给我们4个选择,分别是在新的项目录制一个新的测试、打开一个存在的项目、创建一个新的项目和关闭Selenium IDE,意思非常清晰,根据你的需要选择即可。
在这里插入图片描述
以第一个选项为例,点击Record a new test in a new project,然后窗口会跳转到输入项目名称的界面,此处输入一个适合自己项目的名称即可,该名称是可以修改的
在这里插入图片描述
然后点击OK按钮,页面跳转到如数BASE URL的界面,此处输入被测系统的首页地址即可,例如我们输入http://www.baidu.com
在这里插入图片描述
然后点击START RECORDING按钮即可开始录制,浏览器会自动打开您如数的BASE URL,然后记录您后续的所有操作,并且生成脚本,当您完成操作后,切换到Selenium IDE的窗口点击右上角的Stop Recording按钮即可结束录制
在这里插入图片描述
然后在TEST NAME输入框输入该用例的名称,点击OK即算完成一条录制,然后在Selenium IDE界面的工具栏中有回放相关以及回放速度相关的功能可供使用,并且回放的时候在窗口下方会记录日志

Katalon Recorder

它由Katalon LLC提供,不但支持对页面操作的录制回放,以及测试集合和测试用例的组织方式,而且它还支持若干主流语言的脚本导出,能够使我们的代码编写速度大大提升

Katalon Recorder下载

与Selenium IDE一样,您可以访问谷歌商店或者使用Firefox访问其扩展组件页面都可以轻松检索到Katalon Recorder,然后直接点击“添加至Chrome”或者“添加到Firefox”,与获取Selenium IDE如出一辙。

Katalon Recorder 录制与回放

打开Katalon Recorder,如图所示,首先点击New创建Test Suite和Test Case,然后在工具栏中点击Record,然后回到页面操作即可完成录制,完成操作后,再次回到Katalon Recorder窗口点击Stop按钮即可停止录制,同样的它也提供了通过点击Play可以回放单一测试用例、通过点击Play Suite可以回放整个TestSuite的机制、如果点击Play All则会执行所有用例。
在这里插入图片描述

测试脚本导出

与Selenium IDE最大的不同是在工具栏上我们能看到一个“{}Export”按钮,它便是导出测试脚本的入口,点击该按钮,如图所示
在这里插入图片描述
在Format列表中我们能看到,它支持多种语言以及多种单元测试框架组合的导出,例如C#(MSTest/NUnit)、Java(TestNG/Junit),不幸的是它对于Python的支持目前只到Python2,导出之后我们可能还需要进行少许修改,如下所导出的一段在百度检索字符串的代码所示。

# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import NoAlertPresentException
import unittest, time, re
class TestCase01Search(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.driver.implicitly_wait(30)
        self.base_url = "https://www.katalon.com/"
        self.verificationErrors = []
        self.accept_next_alert = True
    def test_case01_search(self):
        driver = self.driver
        driver.get("https://www.baidu.com/")
        driver.find_element_by_id("kw").clear()
        driver.find_element_by_id("kw").send_keys("davieyang")
        driver.find_element_by_id("form").submit()
        driver.find_element_by_link_text(u"Python基础之While循环 - davieyang - 博客园").click()
    def is_element_present(self, how, what):
        try: self.driver.find_element(by=how, value=what)
        except NoSuchElementException as e: return False
        return True
    def is_alert_present(self):
        try: self.driver.switch_to_alert()
        except NoAlertPresentException as e: return False
        return True
    def close_alert_and_get_its_text(self):
        try:
            alert = self.driver.switch_to_alert()
            alert_text = alert.text
            if self.accept_next_alert:
                alert.accept()
            else:
                alert.dismiss()
            return alert_text
        finally: self.accept_next_alert = True
    def tearDown(self):
        self.driver.quit()
        self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
unittest.main()

ChroPath

它是由autonomiq.io提供的一款获取页面元素定位信息的浏览器插件,能够帮助我们快速的获取元素定位信息表达式,虽不能助我们提升编写代码的速度,但却可在我们获取页面元素的时候提供帮助,变相的提升快速构建测试代码的效率

获取ChroPath

与Selenium IDE和Katalon Recorder一样,您可以访问谷歌商店或者使用Firefox访问其扩展组件页面都可以轻松检索到ChroPath,然后直接点击“添加至Chrome”或者“添加到Firefox”,这与操作前两个工具是一样的。

ChroPath获取Xpath和CSS定位

这款工具在Chrome和Firefox两个浏览器上的使用方式大致相同,首先我们看Firefox,添加了该插件后,按F12,打开Firefox的开发者工具便可以发现ChroPath已经显示在工具栏最后了如图所示。
在这里插入图片描述
然后通过鼠标左键点击激活左侧的“Inspect”,再点击页面上想要获取的页面元素,便可以获取该元素的相对Xpath地址、绝对Xpath地址以及CSS Selector,如图所示。
在这里插入图片描述
而在Chrome浏览器上,按F12打开开发者工具,先要打开工具栏上的Elements,然后右侧会出现新的工具栏,ChroPath就陈列在最后端,如图所示
在这里插入图片描述
点开ChroPath,然后再去左侧Html元素中点击某个元素,ChroPath便会自动显示相对Xpath地址、绝对Xpath地址以及CSS Selector

发布了210 篇原创文章 · 获赞 133 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/dawei_yang000000/article/details/105451045