关于这个,博客园里有很多初级的教程,我是看这篇:

http://www.cnblogs.com/luminji/archive/2010/11/18/1880452.html 初学的可以跟着这个做一边。

对于CODEUI,我研究的时间不久,但是对于这个,只要是个做过开发的DEV,应该说难不倒的。我就说下我的感想:

第一点:

我觉得说最重要的东西:(用黄色笔划出来的东东,这个文件说你录制以后,生成的代码所在地,所以每次生成代码的时候,这个就会被覆盖掉) 说到这里:我们是不是不应该在这里做什么修改呢,因为无论做什么修改都会被覆盖掉。那在哪里做修改呢?这个黄色标注的文件说我们可以修改的东西。我们再来看一下两个文件的类名:

 public partial class UIMap
{
}
[GeneratedCode("Coded UITest Builder", "12.0.30501.0")]
public partial class UIMap
{
}

看这两个.CS文件内部其实说partial文件,所以这个CODEUI工具就说要你把你认为有用的东西合并到UIMap.cs(这个名字我自己取的,随意的)中。 然后你的CASE就能很方便调用UIMAP里面的东西(我们要求:相同的东西只有一份就好)

 第二点:

  如果你玩的说录制,然后在录制,再。。。。(录制)。 这样的话(好吧,没什么问题,也能做好你的工作),我个人认为这样的方式会浪费你的时间,因为可能大部分的Control你都已经有了。所以我们不去录制,我们抓取,用这个东西,我们就可以抓取我们想要的东西,当然如果你抓取的是一个子空间,它还是会生成你的父控件代码,这个时候我们只要把子控件的代码移动到UIMAP.CS中可以了。这样,我们自己可以确保没有重复的控件存在,我一直看见很多的Document1-10,天哪,如果改了一个小地方,我居然不知道如何下手。注:如果关闭了上面这个图的东西,想再次打开其实很方便,这里右击选择(Edit with Coded UI Test Builder)就好。

第三点:

  是不是所有页面的东西都抓到MAPUI.CS中呢?我只能说...兄弟..你有种...我佩服!!!

  我们一个页面放一个UIMAP(名字自己取)里,有一些比较特殊。比如你在http://baidu.com/ 里面你点了search url地址变成了http://baidu.com/dfafa 这样的,如果你用以前的Document可能会获取不到,这个时候(你可以去录制一份啦,然后还是放在原来(原来录的百度那个里面)那里面,取一个简单易懂的名字就好了),当然你也可以重置一下路劲,这里就不多做介绍了,可以去看相关的文档。

第四点:

  多看博客和文档,多尝试。我对于CODEUI的理解也不是很深.我就看了2天别人的代码,自己尝试着玩了玩,一点感想。往大神们多给点好用的方法和建议。

【学习】CodeUi的更多相关文章

  1. 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代

    2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...

  2. Angular2学习笔记(1)

    Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...

  3. ABP入门系列(1)——学习Abp框架之实操演练

    作为.Net工地搬砖长工一名,一直致力于挖坑(Bug)填坑(Debug),但技术却不见长进.也曾热情于新技术的学习,憧憬过成为技术大拿.从前端到后端,从bootstrap到javascript,从py ...

  4. 消息队列——RabbitMQ学习笔记

    消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...

  5. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  6. Unity3d学习 制作地形

    这周学习了如何在unity中制作地形,就是在一个Terrain的对象上盖几座小山,在山底种几棵树,那就讲一下如何完成上述内容. 1.在新键得项目的游戏的Hierarchy目录中新键一个Terrain对 ...

  7. 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...

  8. 菜鸟Python学习笔记第一天:关于一些函数库的使用

    2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...

  9. 多线程爬坑之路-学习多线程需要来了解哪些东西?(concurrent并发包的数据结构和线程池,Locks锁,Atomic原子类)

    前言:刚学习了一段机器学习,最近需要重构一个java项目,又赶过来看java.大多是线程代码,没办法,那时候总觉得多线程是个很难的部分很少用到,所以一直没下决定去啃,那些年留下的坑,总是得自己跳进去填 ...

随机推荐

  1. xe 最大连接数限制、记录客户连接、心跳

    xe 最大连接数限制.记录客户连接.心跳   //author: cxg unit DSServerContainer; interface uses  SysUtils, Classes, IniF ...

  2. WM_COMMAND 和 WM_NOTIFY 的区别

    当我们按下一个菜单选项,或者一个控件需要通知父窗口一个事件发生(如鼠标单击.双击等),或者快捷键被按下时,Windows将会发送一个 WM_COMMAND 消息给父窗口.那么 WM_COMMAND 消 ...

  3. DM8127 更改调试串口为UART2

    1.uboot修改 1)修改宏定义 /*include/config/ti8148_evm.h*/ #define CONFIG_SYS_NS16550_COM2 0x48024000 #define ...

  4. 开启vmotion,实现虚拟机可以在线迁移的选项

    先决条件: 1.vcenter5.5 2.vmotion服务开启 3.分布式交换机已经部署完毕 4.虚拟机在线迁移必须在web管理下,在vclient不可以

  5. PLSQL Developer备份恢复oracle数据

    使用PL sql提供的功能可以快速的备份恢复oracle数据. 1  导出存储过程,触发器,序列等所有用户对象.(备份) 在PL/SQL Developer的菜单Tools(工具) => Exp ...

  6. Py修行路 python基础 (十八) 反射 内置attr 包装

    一.isinstance 和 issubclass1.isinstance(obj,cls)检查是否obj是否是类 cls 的对象.2.issubclass(sub, super)检查sub类是否是 ...

  7. List转Datatable 新方法

    方法1,最简单的转换 DataTable dt = new DataTable(); dt.Columns.Add("id"); dt.Columns.Add("name ...

  8. Python图片转字符画

    PIL安装很麻烦,推荐下载exe直接安装 PIL官网:http://pythonware.com/products/pil/ 但现在里面下载链接访问不了,我把32位和64位版本上传到博客园以供下载 P ...

  9. 通过DG_BROKE搭建Oracle11g_adg

    1.环境 db_primary db_stanby db版本 11.2.0.4.0 11.2.0.4.0 os版本 centos 6.4 centos 6.4 db_unique_name newte ...

  10. ATL向控件添加私有属性-成员变量

    https://msdn.microsoft.com/zh-cn/library/cc451389(v=vs.71).aspx ------------------------------------ ...