• appium+python+android+HTMLTestRunner使用过程中的问题



    1:问:appium客户端刚发布了一版新的,我想升级可以吗?

    答:建议对于刚发布的新版本不要立即升级,因为客户端每升级一版它肯定会去增加和删减一些语句。所以不建议立即升级。
        应该先采取调研的态度看看哪些会影响到你们自己的case,然后再决定是否升级。

    2:问:appium为什么老是提示错误呢?
    答:appium客户端提示错误的时候,希望重新走一遍流程。
      1:启动appium客户端
      2:手机数据线连接电脑,直至手机上出现允许该电脑调试手机,点击确定即可.(如果一直没有出现,可通过关闭usb调试之后连接数据线重新开启)
      3:开启appium
      4: 运行case

    3: 问:appium中如何判断元素是否存在呢?

    答:appium中支持的语法有find_elements_by_id("XXXX"),该语法是用来查找当前页面符合这个名字(XXXX)id的元素并返回一个list列表,如果不存在时,返回[]

      len(find_elements_by_id("XXXX")),则该语法就会给出上述列表总共有几个元素

      接下来就是重点了:
      if len(find_elements_by_id("XXXX")) != 0:

        print "该元素存在"

      if len(find_elements_by_id("XXXX")) == 0:

        print "该元素不存在"

    4:问:对同一个页面中两个相同id,相同name的元素如何进行点击呢?

    答:e1 == find_elements_by_id("XXXX")

      e1[0].click()    //对第一个元素进行点击,第一个元素必然是以0开始的

      e1[0].click()  //对第二个元素进行点击

    5:问:我在pycharm中运行的测试案例顺序与我添加到测试套件的顺序不一致&没有HTMLTestRunner测试报告生成?

    答:pycharm中运行分为以下两种情况,第一种是在python自带的框架中运行,不会走if __name__ == '__main__'以下的代码块,故此运行case的顺序和你自己添加的case顺序当然就不一样啦!并且该种情况也就不会再生成测试报告啦!

    所以我一般推荐下面第二种运行方法。直接运行当前py文件。

    6.问:我的测试案例运行过程中报错?
    答:查看自己编写的代码块中是否存在冒号:

    若存在推荐都替换为_即可。冒号是在函数下不被允许的。

    检查自己的路径填写方向是否有错(特别是/的方向啊,从windows路径直接复制过来的路径斜线方向是反的),正确的如下:

    7:问:我的测试报告一直报错'ascii' codec can't decode byte 0xe9 in position 775: ordinal not in range(128)

    答:python版本是2.7,故此往case头加入以下三句,问题完美解决。

    import sys
    reload(sys)
    sys.setdefaultencoding("utf-8")

     

     

  • 相关阅读:
    python : 将txt文件中的数据读为numpy数组或列表
    ROS :为IDE配置环境变量
    ROS 教程之 navigation :在 catkin 环境下创建costmap layer plugin
    ROS 教程之 vision : 用各种摄像头获取图像
    ROS 教程之 network:多台计算机之间网络通信(2)
    MS sql 查询动态表名的方法
    把ocx打包成CAB,并签名
    DataSet 转换成List
    C# 反序列化datetime的处理
    PSP软件开发过程管理
  • 原文地址:https://www.cnblogs.com/xiaocainiao920/p/7464129.html
Copyright © 2020-2023  润新知