初次使用White来自动化测试10个9相加
1、新建Visual C#->测试->单元测试项目
2、在资源视图->引用,右键,添加引用,添加White的两个.dll文件
3、在工程中添加命名空间:
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Text;
using TestStack.White;
using TestStack.White.AutomationElementSearch;
using TestStack.White.Factory;
using TestStack.White.Finder;
using TestStack.White.InputDevices;
using TestStack.White.UIItems;
using TestStack.White.UIItems.Finders;
using TestStack.White.UIItems.WindowItems;
using TestStack.White.WindowsAPI;

4、源代码

Application testApp= Application.Launch("C:\\Windows\\system32\\calc.exe");//绑定应用程序
Window testWindow = testApp.GetWindow("计算器", InitializeOption.NoCache);//获得窗口

int i = 9;
Button num_9 = testWindow.Get<Button>(SearchCriteria.ByAutomationId("139"));//获取按钮句柄,按钮9
while((i--) != 0)//循环10次
{
//Button num_9 = testWindow.Get<Button>(SearchCriteria.ByAutomationId("139"));
num_9.Click();
Button flag_add = testWindow.Get<Button>(SearchCriteria.ByAutomationId("93"));
flag_add.Click();
}

num_9.Click();
Button equal = testWindow.Get<Button>(SearchCriteria.ByAutomationId("121"));//按钮等号
equal.Click();
// TextBox output = testWindow.Get<TextBox>(SearchCriteria.ByAutomationId("404"));
string test = testWindow.Get(SearchCriteria.ByAutomationId("158")).Name;//结果
//var result = test;
if (test == "90")
{
Assert.AreEqual("90", test);
}
else
{
Assert.AreNotEqual("90", test);
}

white的配置使用的更多相关文章

  1. 【原创】自己动手写控件----XSmartNote控件

    一.前面的话 在上一篇博文自己动手写工具----XSmartNote [Beta 3.0]中,用到了若干个自定义控件,其中包含用于显示Note内容的简单的Label扩展控件,用于展示标签内容的labe ...

  2. mac下iterm配色、半透明与样式设置

    mac下iterm配色.半透明与样式设置 * {display: table-row!important} .MJXp-surd {vertical-align: top} .MJXp-surd &g ...

  3. 几乎零配置产生Nuget包的库:White Tie

    通过Nuget管理器为你所需要产生Nuget包的项目安装White Tie,目前最新版本为1.3.16,VS2015下可用,VS2013应该问题也不大,VS2010就不好说了. 安装好之后直接重新生成 ...

  4. 【备忘】Conky配置

    贴配置: background yes use_xft yes xftfont Sans:size= xftalpha 0.8 update_interval own_window yes own_w ...

  5. Gulp常用前端流程自动化配置

    前言 近期的项目全部由Grunt + LESS 转向改用Gulp + SASS 进行前端开发,也就奔着Gulp那比较好用的自定义函数而来的. 一.package.json文件配置如下: { " ...

  6. ubuntu 下emacs 配置

    (set-language-environment 'Chinese-GB) (set-keyboard-coding-system 'utf-8) (set-clipboard-coding-sys ...

  7. Xamarin Studio在Mac环境下的配置和Xamarin.iOS常用控件的示例

    看过好多帖子都是Win环境装XS,Mac只是个模拟器,讲解在Mac环境下如何配置Xamarin Studio很少,也是一点点找资料,东拼西凑才把Xamarin Studio装在Mac上跑起来,如下: ...

  8. Debian 7 安装配置总结

    最近几天折腾了一下Debian 7 (gnome桌面DVD版,KDE桌面CD版最后会提到),总的来说收获还是挺大的,对比以前使用ubuntu,debian 7给我的感觉像是一个新生婴儿,不带多余的花俏 ...

  9. NGINX 配置 SSL 双向认证

    对于 NGINX 的 HTTPS 配置,通常情况下我们只需要实现服务端认证就行,因为浏览器内置了一些受信任的证书颁发机构(CA),服务器端只需要拿到这些机构颁发的证书并配置好,浏览器会自己校验证书的可 ...

随机推荐

  1. 前端单页应用SEO解决方案

    在这里只会提到Google的解决方案,日后再补充百度的解决方案 我们经常使用的单页都是#!来做应用的前端路由,因为这个在多个版本浏览器上有很好的兼容性 当Google发现URL里有#!符号,Googl ...

  2. .NET 通过SmtpClient发送邮件 提示 4.7.1 service unavailable try again later 解决办法

    最近用C#的SmtpClient发送电子邮件碰到这个错误: 正在处理错误. 服务器响应为:4.7.1 Service unavailable - try again later 换了其他的SMTP服务 ...

  3. Objective-C语言的面向对象特性

    Objective-C作为一种面向对象的编程语言,具有面向对象的基本特征,即:封装.继承和多态.主要介绍Objective-C中有关面向对象基本概念:类.对象.方法和属性等. 类是Objective- ...

  4. 161205、win10安装mysql5.7.16数据库

    1.下载mysqlk数据库http://dev.mysql.com/downloads/file/?id=467269 2.解压到本地目录 3.复制一份my-default.ini 修改名称为my.i ...

  5. 各种数据库连接代码(java)

    SqlServer2000 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); URL = "j ...

  6. ubuntu 修改终端命令显示的颜色

    转于  http://www.blogbus.com/riusksk-logs/62891140.html 修改当前用户 gedit ~/.bashrc 在最后一行下面添加这行 PS1='${debi ...

  7. IBatisNet Demo (升级from 1.1)

    sqlMap.config, 要修改provider的设置 <providers resource="providers.config"/> <database& ...

  8. Binary Tree Level Order Traversal II

    /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode ...

  9. org.hibernate.TransientObjectException

    使用JPA注解@ManyToMany做一个多对多的用例. 为了避免在删除主表数据时同时级联删除从表数据,JPA官方文档建议在主表的从表字段使用级联注解:CascadeType.PERSIST,Casc ...

  10. DockerUI安装、使用

    虽然大多数开发人员和管理人员通过命令行来创建及运行Docker容器,但Docker的Remote API让他们可以通过充分利用REST(代表性状态传输协议)的API,运行相同的命令.这时,Docker ...