51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1483|回复: 1
打印 上一主题 下一主题

将CodedUI Test 放到控制台程序中,模拟鼠标键盘操作

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2018-4-13 15:38:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
CodedUI Test是微软的自动化测试工具,在VS中非常好用。可以用来模拟鼠标点击,键盘输入。但执行的时候
必须要用mstest调用,无法传入参数(当然可以写入config文件中,但每次修改十分麻烦)。



因为要做一个模拟鼠标键盘操作工具,由上层程序传入参数调用,于是尝试使用CodedUI Test的dll制作了一个
小的控制台程序。



参考 Shai Raiten's Blog。但是他给出的dll并不全,个人尝试并没有成功。于是又多添加了一些dll。



  1. [csharp] view plain copy
  2. C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\  
  3.   
  4. Microsoft.VisualStudio.TestTools.UITesting.dll  
  5. Microsoft.VisualStudio.QualityTools.CodedUITestFramework.dll  
  6. Microsoft.VisualStudio.TestTools.UITest.Common.dll  
  7.   
  8. C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\  
  9.   
  10. Microsoft.VisualStudio.TestTools.UITest.CodeGeneration.dll  
  11. Microsoft.VisualStudio.TestTools.UITest.Framework.dll  
  12. Microsoft.VisualStudio.TestTools.UITest.Playback.dll  
  13. Microsoft.VisualStudio.TestTools.UITest.Extension.dll  
  14. Microsoft.VisualStudio.TestTools.UITest.Extension.IE.dll  
  15. Microsoft.VisualStudio.TestTools.UITest.Extension.Uia.dll  




  16. 新建一个控制台程序。并且添加一些using

  17. [csharp] view plain copy
  18. using System;  
  19. using System.Collections.Generic;  
  20. using System.Linq;  
  21. using System.Text;  
  22. using Microsoft.VisualStudio.TestTools.UITesting;  
  23. using System.Drawing;  
  24. using System.Windows.Forms;  
  25. using System.Windows.Input;  
复制代码




程序为

  1. [csharp] view plain copy
  2. namespace Test  
  3. {  
  4.     class Program  
  5.     {  
  6.         static void Main(string[] args)  
  7.         {  
  8.             Playback.Initialize();  
  9.               
  10.             
  11.             //模拟左键点击  
  12.             Mouse.Click(new Point(40, 1000));  
  13.   
  14.             //模拟右键点击  
  15.             Mouse.Click(MouseButtons.Right, ModifierKeys.None, new Point(40, 1000));  
  16.               
  17.             //模拟键盘输入  
  18.             Keyboard.SendKeys("test");  
  19.             Playback.Cleanup();  
  20.          
  21.         }  
  22.     }  
  23. }  
复制代码




这样就可以自己传参来进行操作了。注意Initialize和Cleanup,必须要加上。执行完毕还会有报告。

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-18 02:26 , Processed in 0.064365 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表