python wxpython radiobutton 能不能默认不选择_Python啥都行_Robot自动化测试

37416ca2b8859595a7121bdb7d203221.png

文章目录

  • Robot介绍与环境搭建
    • Robot特性初探
    • Robot 技术架构
    • WxPython GUI工具箱
    • Robot Framework+RIDE安装
  • 第一个案例
    • 启动RIDE
    • 自定义一个函数
    • 新建项目及测试用例
    • 导入自定义库函数
    • 使用自定义函数
    • 运行测试用例及查看其报告

Robot介绍与环境搭建

Robot特性初探

Robot Framework是一个基于Python的,可扩展的关键字驱动的测试自动化框架,用于端到端验收测试和验收测试驱动开发(ATDD)。它可用于测试分布式异构应用程序,其中验证需要涉及多种技术和接口。更本质一点就是可以把你编写好的函数导出来,然后像写存储过程一样写代码,达到降低难度的目的。比如你在python文件中写好了一个函数login_system(username,password),然后Robot Framework就可以导出为Login System,别人写脚本时就可以写成Login System username password。

  1. 启用易于使用的表格语法,以统一的方式创建测试套件、用例
  2. 提供从现有关键字创建可重复使用的更高级别关键字的功能
  3. 提供易于阅读的结果报告和HTML格式的日志
  4. 为Selenium提供Web测试,GUI测试,运行进程,Telnet,SSH等支持
  5. 支持创建数据驱动的测试用例
  6. 内置对变量的支持,支持if、for语句特别适用于不同环境下的测试

Robot 技术架构

该测试数据是简单,易于编辑表格格式。启动Robot Framework时,它会处理测试数据,执行测试用例并生成日志和报告。核心框架对测试中的目标一无所知,与它的交互由测试库处理。库可以直接使用应用程序接口,也可以使用低级测试工具作为驱动程序。

3a67116374b8eab1c93207de162b165e.png

Libraries Tool:Selenium、Request

WxPython GUI工具箱

WxPython是Python编程语言的一个GUI工具箱。他使得Python程序员能够轻松的创建具有健壮、功能强大的图形用户界面的程序。

Robot Framework+RIDE安装

RIDE是使用wxPython库编写的Robot Framework的图形界面。虽然Robot Framework的使用者仍是程序员。但有了RIDE图形界面则可以算一套工程化的管理工具,对初学者而言Robot Framework其实也是讲通过RIDE使用的方式。

安装方法千千万,pip大法最简单。直接使用pip安装ride就可以了,Robot Framework、wxPython等依赖库都会自动安装好。

fe7db45c558773406f8413a30210ba01.png

第一个案例

启动RIDE

进入自己当前python环境的Scripts目录(比如我这里是F:PyChramobotScripts)使用以下命令启动ride:

23768f8facde97c4302fcbe921a36350.png
090778ba03d5c240a116c7c199846cbe.png

启动后界面如下,常规的一个窗口程序界面。

605d0856b77da7cf2a659af440f31030.png

自定义一个函数

将以下代码使存到桌面,并命名为test_lib.py

0299c3d556c60a49cf9628e16bdfc6a2.png

我们先看一下直接运行的结果,在main中传入的百度的url,然后打印出返回的页面的代码。

5acde2a97638787534d9ddd2f94f5fb4.png

新建项目及测试用例

主菜单----File----New Project。主要是填写项目名称(比如我这里是test),其他默认即可。Type/Format这种东西无非是存放格式的区别不必太在意。

b92ffff3cf2112c8a9a7a6233e83f5e8.png

在新建的项目上鼠标右键—New Test Case—输入测试用例(我这里是testCase1)名称点击OK。

75c4250c9b31713bb440808b90a42717.png

经以上步骤项目和测试用例都已创建好,当前界面如下:

d16c84836904b47d840f0619ffff19a8.png

导入自定义库函数

对我们这里页言,自定义库就是前面的test_lib.py,库含数就是其中的get_url_source_code。左侧窗格选中项目,右侧窗格选中Edit选项卡,点击Library按钮,测试用例是不能导入库的,只有测试套件才可以导入库文件

90010cd100d628790dfec3a87ceeeed8.png

通过Browse选中我们的test_lib.py,其他不用填,点击OK。

83874e7ad080181418aee5c7508eacb4.png

回到主窗口上可以看到导入了一个库(如果呈红色说明导入报错,一般是脚本代码有问题,可借助cmd窗口的输出进行定位)

91d20ec3a91575f7be4d06568a0f6f45.png

在上边界面中使用F5键,唤出关键字搜索对话框,Source中下拉选中test_lib。如无意外,可以看到如下图我们脚本中的get_url_source_code被抽取成了Get Url Source Code关键字,注释这些也都有展现在上面(url那行没换行是和的问题)。

fb4d92e5f93219c0014fe619754aa20a.png

使用自定义函数

经过前面几步我们已经将自己写的函数导入了进来,下来看如何调用,这步也是Robot Framework(或者RIDE)的主要用法。回到主窗口,左侧窗口选中测试用例,右侧窗口选中Edit选项卡,界面如下。测试用例就真的是测试用例,其中的1、2、3、4、5就是测试步骤,其中第一列是关键字(即本质上的函数),其后各列用于输入参数。

425a5016e8b5e4e2b777afc8c4058bb7.png

我们输入我们要使用的关键字“Get Url Source Code”(可使用Ctrl+Alt+Space获取补全提示),此时界面如下图。一列为粉红底色,表示需要一个参数;其余后续列为灰色表示不使用(但如果想的话可以把自己的注释写在这些灰色格子上)

6081cf6285294ccc335a7474c883c3b1.png

我们把参数设置成“https://www.baidu.com”,此时再看界面如下,白色底表明填写上没有错误。

9d42deb82fbd441602efcc7df39b6dbc.png

运行测试用例及查看其报告

运行很简单,左侧窗格钩选要运行的测试用例,右侧窗格切换到Run选项卡,点击Start按钮。底部窗格的输出其实就只是我们在get_url_source_code函数中的打印。

cdb77207676e351b36a9abdeee56e4e0.png

点击Report和Log按钮查看生成的报告,可以看到主要仍旧只是把打印记录到文件里。

604008507b8071f6505ec5bd38fde638.png
565510a50c711023c400ad94f20feb83.png
ebac8a4070b04dc985bb7a6ff4797cce.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/520736.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么嫁人就选程序员!

本文的重点是:“为什么年轻漂亮的小姑娘都瞄准了程序员小哥哥”“理发38?太奢侈了!淘宝20买套剪刀自己可以用好几年。”“衣服太贵了,我觉得优衣库的那件打折就已经很好了”“上个月的一千块钱的零花钱没花完,这个月先…

数字化转型 移动化先行 云栖大会上发布了哪些移动研发新利器?

随着企业使用互联网技术的不断深入,企业在产品研发、供应链管理、市场运营及企业内部的场景当中,生产效率得到大幅度提升。随着移动互联网技术在社会层面深度普及,移动设备的普及性使得企业成为数字化转型的最佳载体。本文以2018年云栖大会杭…

c语言cis,c语言小白学习历程第五篇

学习目标:难的咱也看不懂,先把简单的看了再说,加油L 冲冲冲!学习时间:2020年11月1日学习产出:回调函数学习:回调函数说白了就是一个通过函数指针调用的函数。如果你把函数的指针Callback(地址)作…

邱跃鹏:软硬件一体化、Serverless、智能化是云计算三大趋势

近日腾讯公司副总裁、腾讯云总裁邱跃鹏在“腾讯Techo开发者”大会上致辞。他表示,云计算未来有三大趋势,即软硬件一体化(Cloud Native Hardware)、无服务器计算(Serverless)和智能化(Smart&…

阿里云喻义:十年牧码,从码农走向工程师的进化之路

有人会问,码农和工程师有区别吗?有什么区别?相信每个人都有不同的理解。 “你敲下的每一行代码,你想过他会如何在计算机上运行吗?你想过你的这一行代码会产生多少cache miss吗?你想过你的这段代码分支预测…

idea出现 Error:(1, 16) java: 非法字符: '\u0a0d'

异常案例: 解决方案:可以将文件的编码格式由utf-16 变为utf-8就可以了。

android数字滚动动画,Android超简单实现金钱滚动效果

目录目录效果展示实现原理利用ValueAnimator将数值从0一直增长到你所需要展示的数值,然后使用TextView将增长过程中的数值不断展示即可实现金钱的滚动效果。ValueAnimator基础讲解ValueAnimator是Android中用来实现属性动画的类,它是Android3.0后才引入的…

因为信仰,油画专业的他自学开发进击阿里技术P9

大约在1年以前,阿里云视频云团队来了一位热心和气、爱好广泛的老干部新同学,他就是资深技术专家郝冲,花名和招,寓意“和气招财”。 有人说程序员只喜欢安静地写代码,和招偏偏一个户外运动爱好者。他擅长滑雪&#xff…

聚焦技术和实践,腾讯全面揭秘基础设施和大数据演进之路

“开发者是推动技术发展的主力军,数字社会向前的每一步,都离不开广大开发者。作为数字化转型助手,腾讯云将秉持“开源、共享、创新”的三大理念持续助力开发者的个人成长和价值创造。目前腾讯云已经服务了数百万开发者,给到开发者…

Apache JMeter 测试 HTTP接口

一、设置基础组件 1. Apache JMeter 测试 HTTP接口流程 原则:简单的http请求而已,例如:PostMan测试一样的 1.添加一个线程组 2给线程组添加一个取样器,用来发送HTTP请求 3.给线程组添加一个监听器(观察结果树),用来查…

MaxCompute2.0新功能介绍

在过去的两年内,MaxCompute进行了翻天覆地的重构,从1.0版本全面升级到了2.0版本。而大家或许对于MaxCompute 2.0的一些新特性并不了解,在本文中,MaxCompute技术专家秋鹏就为大家详细介绍MaxCompute 2.0的新特性。 本文主要围绕以下…

android顶部导航高度,Android特效——————底部/顶部导航条(Fragment+ViewPaper+XTabLayout)...

初次使用xtablayout和viewpaper2.所以就弄了最基础的导航条一、效果二、代码配置环境【在bulid.gradle中添加以下代码】implementation ‘androidx.viewpager2:viewpager2:1.0.0-alpha02‘implementation‘com.androidkun:XTabLayout:1.1.4‘按钮点击切换图片【几个点击按钮图片…

Apache JMeter 压试 HTTP接口

压测模拟100个用户连续发10次起请求 总请求数量线程数*循环次数1. 设置线程数 2. 查看服务端输出 3. 查看结果树 4. 查看聚合报告

Apache孵化器主席Justin Mclean:如何成为Apache顶级开源项目

近日,Apache孵化器主席、Apache基金会成员、Dubbo & RocketMQ等开源项目的导师Justin Mclean来到阿里巴巴西溪园区,与众多开发者分享了如何打造一个Apache顶级项目,以及项目孵化过程会遇到的一些盲点和挑战。 经Justin Mclean先生本人允…

正式开源TKE和TBase,腾讯正成为大数据领域开源最全面厂商

在11月6日召开的Techo开发者大会上,腾讯云副总裁、腾讯数据平台部总经理蒋杰博士正式对外披露腾讯大数据平台10年技术演进历程。 经过10年的积累,腾讯大数据平台的算力资源池目前已有超过20万台的规模,每天实时数据计算量超过30万亿条&#…

服务化改造实践(三) | Dubbo + Zipkin

随着业务的发展,应用的规模不断的扩大,传统的应用架构无法满足诉求,服务化架构改造势在必行,以 Dubbo 为代表的分布式服务框架成为了服务化改造架构中的基石。随着微服务理念逐渐被大众接受,应用进一步向更细粒度拆分&…

基于TableStore的亿级订单管理解决方案

一、方案背景 订单系统存在于各行各业,如电商订单、银行流水、运营商话费账单等,是一个非常广泛、通用的系统。对于这类系统,在过去十几年发展中已经形成了经典的做法。但是随着互联网的发展,以及各企业对数据的重视,…

mybatis-plus的 mapper.xml 路径配置的坑

mybatis-plus今天遇到一个问题,就是mybatis 没有读取到mapper.xml 文件。 #实体扫描,多个package用逗号或者分号分隔 mybatis-plus:typeAliasesPackage: com.gblfy.springboot.mybatisplus.entitymapper-locations:- classpath*:com/gblfy/springboot/*…

加速布局无服务器生态,腾讯云与Serverless.com达成全球战略合作!

在云计算技术领域,“Serverless(无服务器)”作为一种新型的软件设计架构正在快速崛起。作为继虚拟机、容器后的第三代通用计算平台,Serverless技术也一直是腾讯云原生的重点发力领域。 近日,在由腾讯云主办的首届Tech…