05 2020 档案

摘要:一、迭代器 1、可迭代对象 序列观念的通用化:如果对象是实际保存的序列,或者可以在迭代工具环境中一次产生一个结果的对象,就看做是可迭代的。 迭代协议:实现了__next__方法的对象,被认为是可迭代的。 当for循环开始时,会通过它传递给iter内置函数,以便从可迭代对象中获得一个迭代器,返回的对象 阅读全文
posted @ 2020-05-31 14:53 晨尛 阅读(195) 评论(0) 推荐(0)
摘要:1、函数设计 耦合性 对于输入是用参数并且对于输出使用return语句; 只有真正必要的情况下使用全局变量; 不要改变可改变类型的参数,除非调用者希望这样; 每个函数都应有一个单一的、统一的目标; 每个函数应相对较小; 避免直接改变在另一个模块文件中的变量。 总之,使函数和其他编程组件中的外部依赖性 阅读全文
posted @ 2020-05-31 14:51 晨尛 阅读(151) 评论(0) 推荐(0)
摘要:1、传递参数 参数的传递是通过自动将对象赋值给本地变量名来实现的;作为参数被传递的对象从来不自动拷贝。 不可变参数“通过值”进行传递。实际就像创建了一份拷贝。 可变对象是通过“指针”进行传递。可变对象能够在函数内部进行原处的改变。 在函数内部的参数名的赋值不会影响调用者:在函数运行时,在函数头部的参 阅读全文
posted @ 2020-05-31 14:49 晨尛 阅读(222) 评论(0) 推荐(0)
摘要:1、作用域基础 当在程序中使用变量名时,Python创建、改变或查找变量名都是在命名空间(保存变量名的地方)中进行。 在默认情况下,一个函数的所有变量名都是与函数的命名空间相关联的。 在代码中变量名被赋值的位置决定了这个变量名能被访问到的范围。 函数为程序增加一个额外的命名空间层: 默认情况下,一个 阅读全文
posted @ 2020-05-31 14:48 晨尛 阅读(223) 评论(0) 推荐(0)
摘要:1、基础 def是可执行的代码;实时执行的。 Python中所有的语句都是实时运行的,没有像独立的编译时间这样的流程。 def创建了一个对象并将其赋值给某一变量名; lambda创建一个对象但将其作为结果返回; return将一个结果对象发送给调用者。 可出现在函数主体中的任何地方; 表示函数调用的 阅读全文
posted @ 2020-05-31 14:11 晨尛 阅读(116) 评论(0) 推荐(0)
摘要:1、查看启动时间 (1)查看被测应用的包名和活动名:adb shell "logcat | grep START" 执行后启动被测应用,在屏幕会输出包名和活动名: cmp字段的值就是packagename和activity。 (2)查看启动时间: adb shell am start -W -n p 阅读全文
posted @ 2020-05-28 20:32 晨尛 阅读(1649) 评论(0) 推荐(0)
摘要:1、使用 Monkey 2、使用AppCrawler (1)启动Appium (2)运行AppCrawler 阅读全文
posted @ 2020-05-28 20:29 晨尛 阅读(281) 评论(0) 推荐(0)
摘要:Android Debug Bridge https://developer.android.google.cn/studio/command-line/adb 1、介绍 adb 是 Android Debug Bridge, Android 调试桥的缩写,adb 是一个 C/S 架构的命令行工具, 阅读全文
posted @ 2020-05-27 21:03 晨尛 阅读(497) 评论(0) 推荐(0)
摘要:1、应用操作 (1) 安装应用 (2) 卸载应用 (3) 关闭应用 (4) 启动应用 (5) 检查应用是否安装 (6) 将应用置于后台 (7) 应用重置 2、上下文操作 (1)获取上下文 (2)当前所有上下文句柄 (3)切换上下文 3、键盘操作 (1)sendKeys()方法 (2)pressKey 阅读全文
posted @ 2020-05-27 20:44 晨尛 阅读(80) 评论(0) 推荐(0)
摘要:(1)id定位 通过uiautomatorviewer.bat 工具可以查看对象的id属性。如果目标设备的API Level低于18则UIAutomatorViewer不能获得对应的Resource ID,只有等于大于18的时候才能使用。 打开uiautomatorviewer.bat工具: 使用方 阅读全文
posted @ 2020-05-27 20:19 晨尛 阅读(89) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2020-05-27 20:14 晨尛 阅读(102) 评论(0) 推荐(0)
摘要:1、环境搭建 语言 python: http://www.testclass.net/selenium_python/install-selenium/ Java: http://www.testclass.net/selenium_java/install-java/ appium client 阅读全文
posted @ 2020-05-26 20:43 晨尛 阅读(413) 评论(0) 推荐(0)
摘要:1、资料 Appium官网:https://discuss.appium.io/ Appium中文文档:https://testerhome.com/ Appium 社区:https://testerhome.com/topics/node23 Appium简明教程:http://www.cnblo 阅读全文
posted @ 2020-05-26 20:39 晨尛 阅读(540) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2020-05-26 20:36 晨尛 阅读(127) 评论(0) 推荐(0)
摘要:1、手工测试 2、局部探索式测试 (1)总览 (2)输入 (3)状态 (4)代码路径 测试时要明确知道程序里可能有哪些分支,并理解哪些输入会导致软件走这条分支而不是另一条。 (5)用户数据 测试时不能真正模拟用户的 实际数据导致测试不够充分。 (6)运行环境 包含与被测程序交互的各种软硬件设施,服务 阅读全文
posted @ 2020-05-26 20:34 晨尛 阅读(187) 评论(0) 推荐(0)
摘要:1、输入、输出测试 2、数据测试 3、运算测试 阅读全文
posted @ 2020-05-26 20:29 晨尛 阅读(155) 评论(0) 推荐(0)
摘要:终极目标:提高交付质量和交付速率 1、基础 2、定位 用测试发现产品的不可测试性 建立产品质量的评估方法 建立可持续运行的测试框架 建立关注开发质量的开发文化 贡献产品发展 3、关于自动化 (1)分层的概念 单元自动化测试:对最小的可测单元进行检查和验证; 接口自动化测试:Web应用的接口测试 模块 阅读全文
posted @ 2020-05-26 20:24 晨尛 阅读(190) 评论(0) 推荐(0)
摘要:1、集成到Selenium Server中,需要下载和运行Selenium Server使用Grid2的功能。 访问Grid控制台: http://localhost:4444/grid/console 通过使用RemoteWebDriver类连接到Selenium Standalone Serve 阅读全文
posted @ 2020-05-24 13:57 晨尛 阅读(182) 评论(0) 推荐(0)
摘要:1、PO(Page Object) 概念:是一种设计模式。将面向过程转变为面向对象(页面对象),整体思想是分层。将某个页面的所有“元素(包含控件)属性”及“元素操作”封装在一个类(Page类)中,以page为单位进行管理。 目的: 提高复用率,可读性和编写效率。 测试代码与被测页面对象代码分离,降低 阅读全文
posted @ 2020-05-24 13:56 晨尛 阅读(590) 评论(0) 推荐(0)
摘要:1、线性 录制或写对应程序的操作步骤产生相应的线性脚本,每个脚背相对独立且不产生依赖于调用。是单纯模拟用户完整的操作场景。 开发成本高; 维护成本高。 2、模块化驱动测试 将重复的操作独立成公共模块,用例执行中需要时则调用。 提高开发效率; 简化维护复杂性。 3、数据驱动 数据的改变从而驱动自动化测 阅读全文
posted @ 2020-05-24 13:54 晨尛 阅读(130) 评论(0) 推荐(0)
摘要:1、元素定位 (1)常规定位 (2)Xpath定位 Xpath规则 其他 text(): 获取节点文本 [@xx]:属性匹配 @xx:属性获取 [contains(@xx)]:多属性匹配 [contains(@xx) and @xxx]:多属性匹配 按节点选择:输入数字、last()、positio 阅读全文
posted @ 2020-05-23 11:48 晨尛 阅读(186) 评论(0) 推荐(0)
摘要:1、安装步骤 安装Python,pip工具 安装selenium 相关资源 (1)selenium-release http://selenium-release.storage.googleapis.com/index.html?path=3.0/ https://selenium.dev/dow 阅读全文
posted @ 2020-05-23 11:31 晨尛 阅读(140) 评论(0) 推荐(0)
摘要:1、Selenium是什么? Selenium的命名比较有意思,当时QTP mercury是主流的商业自化工具,是化学元素汞(俗称水银),而Selenium是开源自动化工具,是化学元素硒,硒可以对抗汞。 Selenium 是web自动化测试工具集,包括IDE、Grid、RC(selenium 1.0 阅读全文
posted @ 2020-05-23 11:23 晨尛 阅读(426) 评论(0) 推荐(0)
摘要:1、IDEA 配置Maven 2、使用命令行创建项目 3、编译和测试 (1)切换到工程目录下,清空以前编译安装过程的历史结果 (2)编译源代码 (3)开始测试 (4)打包为jar包 阅读全文
posted @ 2020-05-21 22:12 晨尛 阅读(136) 评论(0) 推荐(0)
摘要:1、介绍 BuildBot是一个开源的基于python的持续集成系统,它能够以下三种方式触发相应的自动构建和测试运行,从而迅速的发现问题所在,同时指出造成这个错误的开发人员,当然我们还可以通过页面直观的了解到当前所有和master绑定的任务以及各种测试状态。 监控代码管理库的变化从而触发构建测试任务 阅读全文
posted @ 2020-05-21 22:09 晨尛 阅读(453) 评论(0) 推荐(0)
摘要:1、在Docker中安装Jenkins 2、进入Jenkins控制台 3、New Items创建流水线及配置 4、将项目clone到本地,修改Jenkinsfile 后提交 5、运行 阅读全文
posted @ 2020-05-21 22:06 晨尛 阅读(188) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2020-05-21 22:03 晨尛 阅读(123) 评论(0) 推荐(0)