如何用 Python 做自动化测试

2019-01-04 15:36

如何用 Python 做自动化测试



  Python 的安装接触编程语言中很简单的语言了。不需要繁琐的 JDK,也不需要 SDK。直接到官网下载,配置环境就成功了。

  回到桌面,同时按下 WIN+R 键,打开 “运行” 对话框,输入 sysdm.cpl,单击 “确定” 按钮:

  到这里,我们配置环境就已经完成了,但是还是需要验证我们是否成功安装的。按 WIN+R,打开 “运行” 对话框,我们输入 cmd:

如何用 Python 做自动化测试

如何用 Python 做自动化测试

  显示版本信息就证明已经部署成功了,接下来我们就可以开始学习 python 了。

  现在我们就可以直接安装 Selenium 了,重新打开 cmd 窗口,输入:pip ?查看是否存在 pip 命令:

如何用 Python 做自动化测试

  如果不存在首先检查自己的环境变量是否配置正确了;第二检查 Python 文件夹下的 s 文件夹下是否有 pip.exe 这个文件;如果这两步都没问题,就重新下载 python 文件。因为 pip 这个命令对我们来说是非常重要的。

如何用 Python 做自动化测试

  这个是很多新手都会碰到的问题。其实也不用担心,因为 Selenium 驱动对不同版本的浏览器也是不一样的,所以很多人都会遇到这个问题了。

  当前我使用的浏览器是谷歌浏览器。单击这里下载谷歌浏览器驱动。如果使用的火狐浏览器的,就需要先将浏览器版本降级了,所以我不推荐使用火狐浏览器。

如何用 Python 做自动化测试

如何用 Python 做自动化测试

  上面两个驱动都是对谷歌 59 兼容的,下载完之后,我们将下载的文件放在 Python 的根目录下就可以了。

如何用 Python 做自动化测试

  接下来测试自己的 Selenium 是否可以启动浏览器了,在 cmd 中输入 Python:

  安装完之后,我们需要输入注册码:选择 license,输入 这个地址,点击 OK 就可以了。如果没有输入,也不用担心,进入 pycharm 之后,点击 Help-Register- 选择 license:

  我们可以点击上面的 Run 或者使用快捷键 Shift+Ctrl+F10 可以直接看到结果了:

如何用 Python 做自动化测试

如何用 Python 做自动化测试

  我们在网上看到的很多方法,都是使用 Firefox 中的插件 firebug 工具对元素进行定位的,但是现在 Firefox 已经不再对 firebug 进行维护了,也就是 firebug 也即将需要从市场淘汰出去了。

  所以,我们会在这里使用的是谷歌的页面定位的,其实也就很简单的事。我们通过在页面中按 F12 查看页面就的元素,找到我们需要的元素,点击右击就可以看到我们需要定位的操作了。

如何用 Python 做自动化测试

  Selenium 给我们提供了 8 种的定位元素方法,我们拿百度首页作为例子。

如何用 Python 做自动化测试

  我们可以直接通过英文意思理解这个方法,通过 ID 查找元素,也就是使用页面里的 id 属性:id = “”。我们先定位百度搜索框,在搜索框里面输入我们要查找的内容。

如何用 Python 做自动化测试

  这个定位的方法是通过查找名字的方式,对元素进行定位。我们在检查元素的时候看到 name=””,就可以使用这个方法了。

如何用 Python 做自动化测试

  这个定位的方法是通过查找 class_name 的方式对元素进行定位,在检查元素的时候看到 class=””,就可以使用这个方法了。

如何用 Python 做自动化测试

  这个定位的方法是通过元素的标签属性对元素进行定位,在检查元素的时候查看元素的最前面的 input,但是这个定位方式有个不好的地方在于很多页面都有同样的标签存在,所以我们定位的时候会很麻烦。

如何用 Python 做自动化测试

  实际上是会报错的,因为 selenium 在定位的时候不清楚我们要找的是哪个元素。

如何用 Python 做自动化测试

  我们如果一定要用这个方法的话,我们就需要清楚,我们定位的标签的精准位置了。

  这个定位方式是通过查找页面的文本信息进行定位。也就是我们看到页面的信息去定位,例如:我们需要定位百度首页的登录按钮,并点击它。

如何用 Python 做自动化测试

如何用 Python 做自动化测试

  这个方法的定位方式就是通过模糊文本信息查找元素,有些时候,我们希望定位到一个文本比较长的元素时,我们就可以通过这个方法去定位。

如何用 Python 做自动化测试

  最后来说两种最常用的定位方法,xpath 元素定位:通过查找元素的路径去查找元素。

  这两个方法在使用上目前很广泛,也很多人推荐使用的方法。这两个很方便,因为浏览器已经帮我们做好准备了,我们只需要复制粘贴就可以了。

如何用 Python 做自动化测试

  这样我们直接复制 xpath 路径就可以了,这样就可以解决我们会输入错误元素的问题(注:在使用 xpath 的时候,最外面的双引号改成单引号)

如何用 Python 做自动化测试

  css 在操作上跟 xpath 差不多,也是通过复制粘贴的方式进行定位,不同在于 css 方法通过对页面中的 css 元素定位的。

如何用 Python 做自动化测试

  AutoIt 目前最新是 v3 版本,这是一个使用类似 BASIC 脚本语言的免费软件 , 它设计用于 Windows GUI(图形用户界面) 中进行自动化操作。

  它利用模拟键盘按键,鼠标移动和窗口 / 控件的组合来实现自动化任务。而这是其它语言不可能做到或无可靠方法实现的

  第一个文件是用来录制我们操作的步骤,第二个文件是将我们的 .au 文件转换成我们最终的 .exe 文件,第三个是编辑我们 .au 文件。这样一来,我们就基本了解 Autolt 的使用流程了。

  将移动到的位置的信息记录下来,点击 Control 可以看到信息窗口的 title 为 “打开”,标题的 Class 为 “#32770”。

  这样我们就可以编辑脚本信息了,打开 SciTE Editor 编辑脚本信息

  这样的脚本有一个问题就是,我们的脚本路径已经写死了,这样对于我们后期的自动化测试是行不通的。

  所以我们必须将写死的路径改活。我们将 upload.txt 文件放在我们的自动化测试脚本里面。

如何用 Python 做自动化测试

  这段代码的意思就是,打开当前文件夹上一个文件的相对路径,这样就可以防止我们的代码写死了。

  这样我们就编辑好了脚本信息了,保存我们的文件,会生成 .au 的文件,但是这个文件不是我们想要的,我们要得到的是 .exe 的文件,打开 Compile to .exe(x64) 文件,将 .au 的文件转换成 .exe 文件就可以了。

如何用 Python 做自动化测试

  点击 Convert 就 ok 了,在当前文件夹下我们就可以看到生成的 .exe 文件了。

如何用 Python 做自动化测试

  具体文件都放在这里了。现在我们就可以去调用 upload.exe 文件了,新建命名为 uploadfile 的 python 文件。

  将这段代码输入进去,就可以调用了。这样一来,我们的 Autolt 学习就完成了。更多的 Autolt 语法,可以去官网看详细的文档。返回搜狐,查看更多