appium

【分享】软件测试(功能、接口、性能、自动化)详解

六眼飞鱼酱① 提交于 2020-12-22 19:42:45
一、软件测试功能测试 测试用例编写是软件测试的基本技能;也有很多人认为测试用例是软件测试的核心;软件测试中最重要的是设计和生成有效的测试用例;测试用例是测试工作的指导,是软件测试的必须遵守的准则。 黑盒测试常见测试用例编写方法 1、等价类 选取少数有代表性的数据,这一类数据等价于这一类的其它值;找出最小的子集,可以发现最多的错误;特性:必须设计的用例;涵盖了大部分情况; 2、边界值 所谓边界条件,是指输入和输出等价类中那些恰好处于边界、超过边界、或在边界以下的状态 ;特征:选择一个或多个元素,以便等价类的每一个边界都经过了测试;与仅仅关注输入条件不同,还需要考虑结果空间(输出等价类)设计测试用例; 3、因果图 输入条件的组合进行分析。用一个系统的方法选择出高效的测试用例集; 分析思路: a、分析规格说明描述,确定原因和结果,并赋予标识符; b、分析规格说明语义,找出原因与原因之间,原因与结果之间关系,画出因果图; c、有些原因与原因之间,原因与结果之间组合不会出现,用记号表明约束或限制条件; d、因果图转换为判定表; e、判定表的每一列作为依据,设计测试用例; 4、判定表驱动法 分析和表达多逻辑条件下执行不同操作的情况的工具 ;略过因果图的绘制,直接列出所有组合进行筛选; 5、正交实验法 利用因果图来设计测试用例时, 输入原因与输出结果之间的因果关系

软件测试详解4—功能、接口、性能、自动化

社会主义新天地 提交于 2020-12-22 17:26:30
一、软件测试功能测试 测试用例编写是软件测试的基本技能;也有很多人认为测试用例是软件测试的核心;软件测试中最重要的是设计和生成有效的测试用例;测试用例是测试工作的指导,是软件测试的必须遵守的准则。 黑盒测试常见测试用例编写方法 1、等价类 选取少数有代表性的数据,这一类数据等价于这一类的其它值;找出最小的子集,可以发现最多的错误;特性:必须设计的用例;涵盖了大部分情况; 2、边界值 所谓边界条件,是指输入和输出等价类中那些恰好处于边界、超过边界、或在边界以下的状态 ;特征:选择一个或多个元素,以便等价类的每一个边界都经过了测试;与仅仅关注输入条件不同,还需要考虑结果空间(输出等价类)设计测试用例; 3、因果图 输入条件的组合进行分析。用一个系统的方法选择出高效的测试用例集; 分析思路: a、分析规格说明描述,确定原因和结果,并赋予标识符; b、分析规格说明语义,找出原因与原因之间,原因与结果之间关系,画出因果图; c、有些原因与原因之间,原因与结果之间组合不会出现,用记号表明约束或限制条件; d、因果图转换为判定表; e、判定表的每一列作为依据,设计测试用例; 4、判定表驱动法 分析和表达多逻辑条件下执行不同操作的情况的工具 ;略过因果图的绘制,直接列出所有组合进行筛选; 5、正交实验法 利用因果图来设计测试用例时, 输入原因与输出结果之间的因果关系

python接口测试之序列化与反序列化

╄→尐↘猪︶ㄣ 提交于 2020-12-18 06:51:06
在python中, 序列化可以理解为:把python的对象编码转换为json格式的字符串,反序列化可以理解为:把json格式 字符串 解码为python数据对象。 在python的标准库中,专门提供了json库与pickle库来处理这部分。 先来学习json的库,导入json库很简单,直接import json,下面通过具体的实例来说明json库对序列化与反序列化的使用。json库的主要方法为: #!/usr/bin/env python #coding:utf-8 import json print json.__all__ 见json库的主要方法: ['dump', 'dumps', 'load', 'loads', 'JSONDecoder', 'JSONEncoder'] 我们定义一个字典,通过json把它序列化为json格式的字符串,见实现的代码: #!/usr/bin/env python #coding:utf-8 import json dict1={'name':'wuya','age':22,'address':'xian'} print u'未序列化前的数据类型为:',type(dict1) print u'未序列化前的数据:',dict1 #对dict1进行序列化的处理 str1= json.dumps(dict1) print u'序列化后的数据类型为:'

自动化测试概述

拜拜、爱过 提交于 2020-12-17 00:20:42
转载: https://airtest.doc.io.netease.com/tutorial/0_automated_testing/ 序 | 自动化测试概述 引言 如何让零基础的同学掌握自动化测试? 这是Airtest团队五年以来一直在努力做的事情:通过不断完善工具链,让用户以极低的门槛进行自动化测试。 无论您是一位初入职场的新人,还是刚开始学习自动化的测试工程师,相信这个教程都可以帮助您理清自动化测试的知识脉络,掌握自动化测试的学习路径,以及通过Airtest的实践教程帮助您完成自动化测试的入门。 在学习完成之后,我们期望您可以: 了解自动化主流框架和工具 掌握Airtest和Poco入门教学内容 在安卓设备上执行自动化测试 在iOS设备上执行自动化测试 在微信小程序和小游戏上进行自动化测试 学会如何编写强兼容性的自动化脚本 … 需要说明的是,本教程中的测试和自动化,均指软件测试和软件自动化,硬件和工业方面的测试与自动化均不包含在本教程范畴内。 准备好了吗?一起开始吧。 先简单聊聊测试 软件测试可以理解成为一个用来鉴定软件是否符合需求以及是否有缺陷的过程。根据不同的维度,软件测试又可以细分为不同的测试类型。 首先根据测试方法来划分,可以分为 : 黑盒测试:最基础的功能测试,不关心内部的代码实现,仅验证输入和输出的正确性。 白盒测试:基于逻辑驱动或者基于代码测试

Unable to install WebDriverAgentRunner on iPhone(real time device) 14.1

我怕爱的太早我们不能终老 提交于 2020-12-15 02:38:50
问题 Appium version :17.1.1-1 Xcode version : 11.3 Real device OS :14.1 I am trying to install the WebDriverAgentRunner on my iPhone which is at OS 14.1 by running the command xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=<device id>' test Getting the below error Error Domain=com.apple.dt.xctest.error Code=9 "Unable to connect to test manager on <deviceID>" UserInfo={NSLocalizedDescription=Unable to connect to test manager on <deviceID>,

定制unittest测试报告

元气小坏坏 提交于 2020-12-11 22:39:17
基于HTMLTestRunner的定制版本非常多,我这几天手动定制了一款,除了有不错的颜值,还提供了一些非常实用的功能。 安装 github: https://github.com/SeldomQA/HTMLTestRunner > git clone https://github.com/SeldomQA/HTMLTestRunner > cd HTMLTestRunner/ > python setup.py install 基本使用 基本用法与大多数定制版的报告一样。 import unittest from TestRunner import HTMLTestRunner class TestDemo(unittest.TestCase): """测试用例说明""" def test_success(self): """执行成功""" self.assertEqual(2 + 3, 5) if __name__ == '__main__': suit = unittest.TestSuite() suit.addTest(TestDemo("test_success")) report = "./result.html" with(open(report, 'wb')) as fp: runner = HTMLTestRunner( stream=fp, title='

relaxed Security AppiumService

半城伤御伤魂 提交于 2020-12-11 02:39:29
问题 I am new to Appium, and I want to execute some ADB commands using appium with C#, example to execute "adb shell ps" Dictionary<string, object> map = new Dictionary<string, object>(); map.Add("command", "ps"); var output = driverAndroid.ExecuteScript("mobile: shell", map); And I start appium programatically AppiumLocalService service; AppiumServiceBuilder builder; if (service == null) { builder = new AppiumServiceBuilder().WithLogFile(new System.IO.FileInfo("Log")); service = builder.Build();

relaxed Security AppiumService

五迷三道 提交于 2020-12-11 02:39:25
问题 I am new to Appium, and I want to execute some ADB commands using appium with C#, example to execute "adb shell ps" Dictionary<string, object> map = new Dictionary<string, object>(); map.Add("command", "ps"); var output = driverAndroid.ExecuteScript("mobile: shell", map); And I start appium programatically AppiumLocalService service; AppiumServiceBuilder builder; if (service == null) { builder = new AppiumServiceBuilder().WithLogFile(new System.IO.FileInfo("Log")); service = builder.Build();

Selenium自动化测试实战|自动侦测浏览器版本并下载对应的浏览器驱动

回眸只為那壹抹淺笑 提交于 2020-12-10 08:31:08
本文转载自霍格沃兹测试学院优秀学员felix的学习笔记,原文链接: http://qrcode.testing-studio.com/f?from=51cto&url=https://ceshiren.com/tag/%E7%B2%BE%E5%8D%8E%E5%B8%96 转载请注明出处 前天聊天时,有同学说 Appium 官方支持自动下载兼容的浏览器驱动,想来Selenium也有类似的方法,于是在网上搜索一番。参考了Medium上一篇文章的方法,对相关步骤进行改进,增加了对多浏览器的支持。 首先,先想好大致上的几个步骤 识别本地浏览器版本 下载对应浏览器版本的驱动 解压到对应文件夹 记录到mapping.json文件中 接下来就是撸起袖子开干 定义好目录结构 |— config ​ |— mapping.json: 浏览器驱动配置信息 |— driver: 存放浏览器驱动 |— utils ​ |— driver_util.py: 封装的工具包 |— test_search.py: 测试脚本 数据准备 导入第三方库,定义好路径名称等常量 import json import os import zipfile import shutil import requests import pathlib from win32com import client as win_client