优秀的脚本调试定位问题具备的特点:

  1、方便调试。

  2、运行报错后容易定位出现的问题。

  3、日志的记录清晰

  4、日志可被存储,一般测试结果的分析在测试之后会进行,那么日志的存储将会为后期的分析问题带来很大的便利

  。。。等等

怎么调试自己写的脚本?通过什么方式进行才可确定自己写的脚本健壮性较好?

  1、常见的方式,编写边调试,首先确定自己开始写的脚本语句是没有问题的。

  2、出现报错时根据报错信息,新增print '***********'等调试语句,通过打印,可快速定位脚本执行到哪一步未正常执行出现中断。

  3、完整的运行完一次脚本。

  4、将脚本同时执行2次,确定前置条件与后置条件是否添加。

  5、一般运行3次,若脚本未出现报错,则证明当前写的脚本是比较健壮的,且前后置条件给定的比较充分。

  6、切记每条测试脚本执行完毕的后置条件均应添加返回到首页或者直接杀掉进程,下次重新启动,这样可保证每次执行的测试用例都是从开始执行。

 查看测试报告测试用例执行失败,如何判定出现报错是什么原因导致?

  常见的导致出现问题的原因为:

    1、脚本写的有问题,测试中可能出现的异常未做处理。

    2、测试的APP功能此时确实存在bug

    3、可能由于APP的UI进行变动,未及时适配脚本导致。

  如何分析到底是什么原因呢?常见的分析手段为:

    1、查看出错的用例,对照用例名称,查看具体的此条用例执行的步骤是什么,优先打开APP手动去执行测试步骤,查看是否出现报错或者ui是否有变动,在此时就可以同时排查出2和3.

    2、若如上的步骤1没有问题,则再次注销掉其他运行成功的脚本用例,单跑此条用例查看是否成功。若失败则在执行时认真查看具体执行到了哪一步出现了报错,根据自己打印的logging日志,逐层进行分析,针对出现的问题适配脚本。

    3、如上步骤均执行完毕,且修改脚本后,重新运行此条用例3遍,确保脚本的稳定性,然后在释放已注销的用例,重新执行1次。

  因此,写脚本时,日志的编写真的很重要,能很方便的帮助你定位问题。

appium+python 【Mac】UI自动化测试封装框架介绍 <四>---脚本的调试的更多相关文章

  1. appium+python 【Mac】UI自动化测试封装框架介绍 <二>---脚本编写(单设备)

    1.单设备的执行很简单,平时可多见的是直接在config中进行配置并进行运行即可.如下: # coding=UTF- ''' Created on // @author: SYW ''' from T ...

  2. appium+python 【Mac】UI自动化测试封装框架介绍 <五>---脚本编写(多设备)

    目的: 通过添加设备号,则自动给添加的设备分配端口,启动对应的appium服务.注意:为了方便,将共用一个配置文件. 1.公共的配置文件名称:desired_caps.yaml platformVer ...

  3. appium+python 【Mac】UI自动化测试封装框架介绍 <三>---脚本的执行

    我自己编写的脚本框架中,所有的脚本执行均放在一个py文件中,此文件作为启动文件执行,包含了运行此文件将执行脚本.分配设备端口.自启appium服务等. 详细的介绍待后期补充.

  4. appium+python 【Mac】UI自动化测试封装框架介绍 <七>---脚本编写规范

    脚本的使用,注释非常关键,无论自己的后期查看还是别人使用,都可以通过注释很明确的知道代码所表达的意思,明确的知道如何调用方法等等.每个团队均有不同的商定形式来写脚本,因此没有明确的要求和规范来约束.如 ...

  5. appium+python 【Mac】UI自动化测试封装框架流程简介 <一>

    为了多人之间更方便的协作,那么框架本身的结构和编写方式将变得很重要,因此每个团队都有适合自己的框架.如下本人对APP的UI自动化测试的框架进行进行了简单的汇总.主要目的是为了让团队中的其余人员接手写脚 ...

  6. Python爬虫教程-30-Scrapy 爬虫框架介绍

    从本篇开始学习 Scrapy 爬虫框架 Python爬虫教程-30-Scrapy 爬虫框架介绍 框架:框架就是对于相同的相似的部分,代码做到不出错,而我们就可以将注意力放到我们自己的部分了 常见爬虫框 ...

  7. 使用appium+python做UI自动化的demo

    使用appium+python做UI自动化的demo 案例使用的知乎app,下载最新的知乎apk,存在了电脑上,只需要配置本机上app目录,不需要再配置appPackage和appActivity # ...

  8. Appium+python移动端自动化测试-python库及pycharm安装(二)

    一.安装python库 安装python库有很多种方法,如pip安装.源文件安装.运行包安装,但我们最常用的就是使用pip进行安装 Appium+python做移动端的自动化测试,所需要安装以下pyt ...

  9. 基于python+appium+yaml安卓UI自动化测试分享

    结构介绍 之前分享过一篇安卓UI测试,但是没有实现数据与代码分离,后期维护成本较高,所以最近抽空优化了一下.不想看文章得可以直接去Github,欢迎拍砖大致结构如下:   结构.png testyam ...

随机推荐

  1. redis的主从复制和哨兵模式

    Redis主从复制是什么? 行话:也就是我们所说的主从复制,主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 Redis主从复制 ...

  2. hdoj3746(kmp算法的nex数组求最小循环节)

    题目链接:https://vjudge.net/problem/HDU-3746 题意:给定一个字符串,问最少在两端添加多少元素使得整个字符串是呈周期性的. 思路: 应用到kmp中nex数组的性质,数 ...

  3. vue element-ui typescript tree报错 === Property 'getCheckedNodes' does not exist on type 'Element | Element[] | Vue | Vue[]'.

    import { Tree } from 'element-ui' const ref = <Tree>this.$refs.tree ref.getCheckedNodes()

  4. JMeter接口自动化学习笔记(一)

    实例教程:https://blog.csdn.net/kasijia/article/details/79405815 https://www.cnblogs.com/rd-ddddd/p/95782 ...

  5. oracle数据库与其他数据库区别

    本文用的是Oracle 10g数据库,利用PL/SQL Developer的集成开发环境(安装可以自行百度) Oracle数据库  ---> 数据库实例  --->  表空间(逻辑单位)( ...

  6. 《Mysql - 我的Mysql为什么会抖一下?》

    一: 抖一下? - 平时的工作中,不知道有没有遇到过这样的场景. - 一条 SQL 语句,正常执行的时候特别快,但是有时也不知道怎么回事,它就会变得特别慢. - 并且这样的场景很难复现,它不只随机,而 ...

  7. Word 写论文插入参考文献的正确操作

    1. 引言 一般我们写论文插入参考文献的标号都是手动输入的,这样造成的问题有以下几个: 手动输入标号比较麻烦: 如果参考文献顺序变了,需要一个一个重新更改标号数值,及其麻烦: 标号无法和末尾的参考文献 ...

  8. 剑指offer57:二叉树的下一个结点

    1 题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回.注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针. 2 思路和方法 中序遍历,下一个结点有两种情况 a ...

  9. PAT(B) 1005 继续(3n+1)猜想(Java)

    题目链接:1005 继续(3n+1)猜想 分析  找出所有的被"覆盖"的数,然后再将输入的数中不在被"覆盖"的数中的数添加到"关健数"中.输 ...

  10. (二)如何利用C# Roslyn编译器写一个简单的代码提示/错误检查?

    上一篇我们讲了如何建立一个简单的Roslyn分析项目如分析检查我们的代码. 今天我们主要介绍各个项目中具体的作用以及可视化分析工具. 还是这种截图,可以看到解决方案下一共有三个项目. Analyzer ...