首页 > 系统相关 >基于Python+UIautomation的WindowsGUI自动化测试实战(二)-计算器

基于Python+UIautomation的WindowsGUI自动化测试实战(二)-计算器

时间:2023-01-13 14:02:38浏览次数:47  
标签:__ WindowsGUI UIautomation Python self result 计算器 calc unittest

(计算器)

1 测试需求

模拟操作windows10自带的计算器,计算简单的结果数据。

2 测试步骤

  • 打开计算器;
  • 输入10*52
  • 查看计算结果,并进行判断是否计算OK;
  • 关闭计算器。

3 实现脚本

# -*- coding:utf-8 -*-

import unittest
import time
import uiautomation
import os

# @unittest.skip("跳过")
class TestFaultTree(unittest.TestCase):
    def setUp(self) -> None:
        # 初始化
        os.system("calc")  # 打开计算器
        time.sleep(2)
        self.calc = uiautomation.WindowControl(Name="计算器")
        self.calc_list = ["一", "零", "乘以", "五", "二", "等于"]
        self.result = "520"

    def tearDown(self) -> None:
        time.sleep(1)
        self.calc.ButtonControl(Name="关闭 计算器").Click()

    def test_toolbar(self):

        time.sleep(1)
        for i in range(0, len(self.calc_list)):
            self.calc.ButtonControl(Name=self.calc_list[i]).Click()

        calc_result = self.calc.TextControl(foundIndex=3).Name
        print("计算器运行结果为:", calc_result)
        print("预期结果为:", self.result)
        self.assertIn(self.result, calc_result)

if __name__ == "__main__":
    unittest.main()

4 实现效果

在这里插入图片描述


标签:__,WindowsGUI,UIautomation,Python,self,result,计算器,calc,unittest
From: https://blog.51cto.com/NoamaNelson/6005912

相关文章

  • WindowsGUI自动化测试框架搭建之需求整理、详细设计和框架设计
    ((一)-总体需求)1需求整理1.1实现目的基于CS架构,模拟用户(鼠标、键盘)操作,达到快速、重复执行测试用例;便于回归测试,快速覆盖主线用例或功能;线上或线下巡检测试,结合持续......
  • Python网络编程之socket之send和recv原理剖析
    一、认识TCPsocket的发送和接收缓冲区当创建一个TCPsocket对象的时候会有一个发送缓冲区和一个接收缓冲区,这个发送和接收缓冲区指的就是内存中的一片空间。二、send原理剖......
  • 基于Python+UIautomation的WindowsGUI自动化测试实战(一)-记事本
    1测试需求模拟用户操作,打开记事本进行内容输入2测试步骤2.1用例1打开记事本;窗口最大化;输入"人生苦短,我用Python!";关闭窗口;不保存直接退出。2.2用例2打开记......
  • 用Python执行程序的4种方式
    在编写代码中,经常会遇到在Python程序中打开外部程序的需求,那么在Python里如何打开外部程序呢?今天我们来介绍四种不同的方式,供大家参考收藏。使用os.system()os.system(......
  • Python字典和集合初窥
    (Python进阶10-字典与集合)1字典字典和列表类似,同样是可变序列,不过与列表不同,字典是无序的。字典的主要特征:1.1字典的创建和删除字典的每个元素都包含“键”和“......
  • Python函数的学习总结
    (Python进阶11-函数)1函数的创建和调用1.1函数创建创建函数即定义函数使用关键字def实现语法:deffname([pname]): ["comm"] [fuc]说明:def:定义函数的,固定......
  • python django 医院挂号系统
    pythondjango医院挂号系统pythondjango挂号管理系统pythondjango医院挂号管理系统后端:pythondjango数据库:MySQL5.7前端:html cssjs等涉及功能:登陆、退出......
  • python实战-解析swagger-api接口信息
    *coding:UTF-8*"""@project->file:city-test->swagger_api_parse_backup@Author:qinmin.vendor@Date:2023/1/1217:55@Desc......
  • python django个人云盘系统
    pythondjango云盘系统pythondjango个人云盘pythondjango本地云盘Pythondjango文件系统 后端:pythondjango数据库:MySQL5.7前端:html cssjs等涉及功能:登陆......
  • 详解Python列表和元组
    (详解Python的列表和元组)1序列序列是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。Python序列结构主要有列表、......