selenium seldom框架

seldom学习(二):seldom 常用使用设置

2020-05-13  本文已影响0人  一如既往而已

一、驱动

浏览器与驱动

我们运行的自动化测试不可能只在一个浏览器下运行,我们分别需要在chrome、firefox浏览器下运行,有时候甚至需要无界面模式。

在seldom中需要只需要修改一个配置即可。

import seldom

if __name__ == '__main__':
    seldom.main(browser="chrome") # chrome浏览器,默认值
    seldom.main(browser="firefox") # firefox浏览器
    seldom.main(browser="ie")  # IE浏览器
    seldom.main(browser="opera") # opera浏览器
    seldom.main(browser="edge") # edge浏览器
    seldom.main(browser="safari") # safari浏览器
    seldom.main(browser="chrome_headless") # chrome浏览器headless模式
    seldom.main(browser="firefox_headless") # Firefox浏览器headless模式

main()方法中通过browser参数设置不同的浏览器,默认为Chrome浏览器。

虽然说安装浏览及驱动是做Web UI 自动化的前提,但是,浏览器驱动的下载安装和设置总是难倒了一部分新手。

seldom 提供了下载浏览器驱动的命令。

下载Chrome浏览器驱动:

seldom -install chrome

注:众所周知的原因,chromedriver使用的taobao的镜像。

下载Firefox浏览器驱动:

seldom -install firefox

默认下载到当前的lib/ 目录下面,将lib/ 目录添加环境变量path

如果你连添加环境变量path都不会,没关系!你可以在seldom中指定浏览器驱动文件目录的绝对路径。

import seldom

# ……
if __name__ == '__main__':
    seldom.main(path="test_sample.py",
                browser="chrome",
                driver_path="D:\git\seldom\lib\chromedriver.exe")

注:浏览器要browser与驱动driver_path 要保持对应关系。

二、seldom 运行

seldom的给运行新手造成了困扰,强烈不建议你在pycharm里面运行。因为许多新手根本搞不明白 pycharm 的运行配置,引起的运行错误也不知道怎么解决。
Window建议使用cmd, mac/linux使用自带终端。

运行说明

参考目录结构如下:

mypro/
├── test_dir/
│   ├── test_sample.py
├── reports/
└── run.py

seldom要运行的测试是由main()方法决定的,创建 run.py 文件

import seldom
seldom.main(path="./")

在cmder/终端下面运行 run.py 文件

> python run.py

或者:

> seldom -r run.py

要运行的用例由 path 参数控制

三、main() 方法

main()方法是seldom运行测试的入口, 很多重要的配置都是通过这个方法完成。

import seldom

# ...

if __name__ == '__main__':

    seldom.main(path="./",
              browser="chrome",
              report=None,
              title="百度测试用例",
              description="测试环境:chrome",
              debug=False,
              rerun=0,
              save_last_run=False,
              driver_path=None,
              grid_url=None,
              timeout=None
    )

说明:

四、seldom 生成测试报告

seldom 默认生成测试报告,在你运行测试用例所再目录下面。

例如,你的目录是这样的:

mypro/
└── test_sample.py

测试文件 test_sample.py 内容如下:

import seldom


class YouTest(seldom.TestCase):

    def test_case(self):
        """a simple test case """
        self.open("https://www.baidu.com")
        self.type(id_="kw", text="seldom")
        self.click(css="#su")
        self.assertTitle("seldom_百度搜索")


if __name__ == '__main__':
    seldom.main("test_sample.py")

执行命令:

seldom -r test_sampe.py

最终运行完成的目录结构如下:

mypro/
├── reports/
│   ├── 2020_01_01_11_20_33_result.html
└── test_sample.py

通过浏览器打开 2020_01_01_11_20_33_result.html 测试报告,查看测试结果。

打开debug

我们并不是所有时候运行测试用例都希望生成HTML测试报告,那么就可以打开debug模式。

...

if __name__ == '__main__':
    seldom.main("test_sample.py", debug=True)

这样就不会生成HTML测试报告了。

定义测试报告的名称

有时候我们需要在测试报告中加上自动化项目的一些信息,那么就可以通过 titledescription 设置。

...

if __name__ == '__main__':
    seldom.main(path="test_sample.py",
                title="百度测试用例",
                description="测试环境:windows 10/ chrome")
image.png
上一篇下一篇

猜你喜欢

热点阅读