自动化测试需要学习那些知识

2021-01-21 13:59发布

7条回答

基本数据类型、变量和集合、控制流、函数、类、模块等等


风中浪子
3楼 · 2021-01-21 15:40

基于Python的自动化测试:Selenium和Appium,主要从Python编程技术、自动化测试入门、Web自动化测试:Selenium、Web自动化测试项目实战、移动自动化测试:Appium、移动自动化测试项目实战几方面展开学习;

一、概念:

设计程序自动执行测试用例,从而减少人工消耗在功能测试上的大量时间,提高测试效率的一种测试方法。从自动化测试的概念便可以看出学习自动化测试的重点:设计程序,也就是编写代码。

二、前提准备:

  • 掌握一门计算机语言,最好是JAVA或Python

  • 熟悉HTML元素及属性

  • 选择一个合适自己的编码工具

  • 掌握一种或多种自动化测试框架

三、Python基础

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。

1、下载地址:Python官网

2、安装:支持Linux&Unix、Windows、Mac

3、下载必要的第三方包:selenium、requests、rebotframework、flake8、yapf等

4、学习:

  • 基本数据类型

  • 变量和集合

  • 控制流

  • 函数

  • 模块

四、HTML及JavaScript

HTML(超文本标记语言)是一种用于创建网页的标准标记语言。

JavaScript 是 Web 的编程语言。

学习:

  • HTML元素及属性

  • JavaScript 浏览器BOM

  • JavaScript HTML DOM

五、IDE使用

我选择的是VScode,理由是扩展性高,适用性广

1、下载地址:VScode官网

2、安装:支持多平台

3、添加扩展:python、rebotframework等

4、配置工作区域

①创建一个本地文件夹作为项目文件

②配置工作区域

六、Selenium基础

Selenium是开源自动化工具

1、安装:pip install selenium

2、selenium3浏览器驱动

3、学习:

  • selenium元素定位

  • 控制浏览器操作

  • WebDriver常用方法

  • 鼠标事件

  • 键盘事件

  • 获取断言信息

  • 设置元素等待

  • 定位一组元素

  • 多表单切换

  • 多窗口切换

  • 警告框处理

  • 下拉框选择

  • 文件上传

  • Cookie操作

  • 调用JavaScript代码

  • 窗口截图

  • 关闭浏览器

七、Rebot Framework

Robot Framework 架构是一个通用的验收测试和验收测试驱动开发的自动化测试框架(ATDD)。

1、安装 pip install robotframework

2、学习:

  • 创建测试、运行与生成报告

  • 基础关键字

  • 扩展库之SeleniumLibrary安装与运行

  • 扩展库之SeleniumLibrary元素定位

  • 扩展库之SeleniumLibrary常用关键字

  • 扩展库之SeleniumLibrary Web测试

  • 扩展库之SeleniumLibrary分层测试

  • 用Python写Robot Framework测试


哆啦公
5楼 · 2021-01-21 17:00

一般的自动化测试的包括接口自动化测试和UI自动化测试。

如果想要往资深测试工程师发展,建议学习测试框架知识,尝试自己搭建测试框架。可以从python入手,对于初学者而言上手较快。基于Python的Unitest和Selenium可以分别实现接口自动化和UI自动化。

如果只是想要使用现成的工具,接口自动化可以使用postman,这是一款可免费使用的工具,基本能满足接口自动化的大多场景;UI自动化可以使用UI Recordder,操作简单,适用于WEB、APP自动化等。


八九
6楼 · 2021-01-22 20:22

看需要掌握到哪一步及工作中需要涉及到哪些工作,建议先从基础理论看起并结合实际工作分析(测试体系的现状分析)

1.软件测试理论基础

白盒测试理论

黑盒测试理论

相对应的还有白黑测试工具使用方法.

或对应开发

2.自动化测试理论

根据测试理论及实际情况选择对应开发工具及脚本语言.

如无测试平台还应进行相应的开发工作

3.测试管理理论

对自动化结果及数据进行配置管理.打通自动化测试流程.


我自己打call
7楼 · 2021-01-25 17:15

自动化测试需要掌握以下的知识:

1.了解Javascript, CSS的知识

2.熟练掌握DOM和HTML知识, (用来解析Web界面)

3.熟练掌握XML技术(需要用XML保存测试数据,用XML展现测试报告)

4.熟练使用C# P/inoke技术调用Windows API (可以用来操作Winform 窗口)

5.熟练掌握窗体"句柄"的概念

6.熟练使用C# 操作Windows 注册表

7.熟练使用C# 中的Process 类

8.熟练掌握数据库的基本操作语句

9.熟练掌握HTTP协议的知识

10.熟练掌握C# 中的HttpWebRequest 类的用法 (用于模拟HTTP请求)

11.熟练掌握正则表达式


人情世故
8楼 · 2021-01-27 10:27

1.Java、Python等编程语言基础知识

自动化测试需要编写自动化测试脚本,所以编程语言是必不可少的,目前最为流行的是Java\Python

2.HTML知识 

基本的前端知识需要了解,因在定位页面元素时需要清楚元素的一些基本特征,HTML相关的标签也需要了解下

3.XPath定位

虽说定位元素时会有很多种方法,但XPATH是最保险也是最为多见的一种方法了。可以参考下火狐下的Firefox工具栏查看,可以安装好Firebug,在HTML源码中非常有利于元素查找和定位

4.Selenium API

Selenium是目前最好用的开源工具之一,所以很多公司也倾向于使用该工具作为自动化测试的工具。API的学习必不可少。


相关问题推荐

  • 回答 12

    自动化测试主要分为三个层次:单元测试自动化、接口测试自动化和UI测试自动化。单元测试自动化调用测量的类或方法,根据类或方法的参数传递相应的参数并返回结果。最终断言判断返回的结果是否与预期结果相等。相等,测试通过,不相等,测试失败。因此,在单元...

  • 回答 13
    已采纳

    Fiddler可以干的东西太多了 ,例如:1.动态Web调试,可以抓取http&分析之,这个不说了,别的很多抓包软件也可以实现2.配合Proxifier可以抓取&代理原本不支持http代理但使用http协议通信的应用3.中间人攻击,因为fiddler本质是个http proxy自然可以给http包下...

  • 回答 19

    1、具备计算机操作基础2、软件测试基础理论知识。3、对于常用的数据库,简单的操作要具备。学习数据库可以自己安装一个数据库,常练习。4、具备一定的逻辑推理能力:这点主要偏向于写测试用例。测试用例是软件测试的核心。写测试用例,可以参考网络一些比较经...

  • 回答 9

    可以根据项目需要进行选择 1.模块化框架(test script modularity)。 2.函数库结构框架(test library architecture)。 3.关键字驱动测试框架(keyword-driven/table-driven testing)。 4.数据驱动测试框架(data-driven testing)。...

  • 软件测试都学什么呀2020-03-11 11:17
    回答 15

    嗯 ,软件测试入门容易,零基础也能学会,下面我给你讲一下学习的具体内容:先第一个阶段主要学习软件测试核心理论:软件测试方法和分类都有什么,白盒测试、黑盒测试、单元测试、集成测试、系统测试、负载测试、兼容性测试等等,还有当下的热门领域测试技巧...

  • 回答 7
    已采纳

    自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入...

  • 回答 10

    自动化测试工具有如下几种:1、WinRunnerMercury Interactive公司的WinRunner是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。通过自动录制、检测和放用户的应用操作,WinRunner能够有效地帮助测试人员对复杂的企业级应用的...

  • APP自动化测试思路2021-01-28 11:12
    回答 12

    1、需求分析测试都是基于需求,所以首先我们需要先理清楚需求,划分之后找到实现的关键点。自动化测试就是实现机器完成测试需求的关键点的一系列操作,并且在脚本的实际运行中添加需要的业务逻辑判断,实现测试自动化。根据脚本的具体实现,整理出打开文件测...

  • 回答 6

    1.分析测试需求测试需求其实就是测试目标,也可以看作是自动化测试的功能点。自动化测试是做不到100%盖率的,只有尽可能提高测试覆盖率。条测试需求需要设计多个自动化测试用例,通过测试需求分析判定软件自动化测试要做到什么程度。一般情况下,自动化测试优...

  • 回答 7

    第一,需求稳定,不会频繁变更第二,研发和维护周期长,需要频繁执行回归测试第三,需要在多种平台上重复运行相同测试的场景。第四,某些测试项目通过手工测试无法实现,或者手工成本太高。第五,被测软件的开发较为规范,能够保证系统的可测试性。另外,某些...

  • 回答 14

    自动化测试对于软件测试工程师来说十分重要。是软件测试人员必备技能。自动化测试框架是为自动化测试脚本提供执行环境的脚手架。框架为用户提供了各种优势,帮助他们有效地开发、执行和报告自动化测试脚本。它更像是一个专门为自动化组织的测试而创建的系统。...

  • 回答 7

    自动化测试的成本高,效果差,是一个相对的,而针对某些具体项目,是必须要接入自动化测试的。首先说一些什么时候会需要自动化测试首先咱们讨论这个问题之前要带着一个疑问:决定要不要做自动化测试的因素有哪些?应该说时间才是一个衡量比重比较大的因素。假...

  • 回答 6
    已采纳

    Appium一款应用于移动端的自动化测试框架,支持跨平台应用,Native、Hybird、Mobile Web都支持。其特点概括一下:跨平台只要一套代码不需要设置签名,不污染源代码不需要项目源代码就可以测试多语言支持可支持多种通用框架完全开源,社区活跃appium应用场景...

  • 回答 4
    已采纳

    第一步,先要安装JDK并配置好相应的环境变量;第二步,下载、部署Android SDK,并配置环境变量。MonkeyRunner位于Android SDK下的tools目录,所以需要把这个目录加入操作系统环境变量PATH中。第三步,编写MonkeyRunner脚本。脚本中需要用到三个类,分别为Monk...

  • 回答 4
    已采纳

    1.monkey应用场景> monkey测试是Android平台自动化测试的一种手段,通过monkey程序模拟用户触摸屏幕、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常======================================异常:崩溃:XX应用停止运行无响应:闪退...

  • 回答 4
    已采纳

    首先我使用了百度搜索adb(Android Debug Bridge)安装包,接下来,我想共享这个安装包:https://pan.baidu.com/s/14SysAIZQhzYKZzQMikE2jQ拿到安装包,首先我把它解压到我的Android文件包里,接着,打开cmd(使用Win+R键--->cmd)点击确定按钮出现输入adb以...

没有解决我的问题,去提问