<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%> 群组技术交流活动---在线交流:QTP入门与实践-UML软件工程组织-火龙果软件
  UML软件工程组织

 

群组技术交流活动---在线交流:QTP入门与实践
 
2008年3月 出自: 火龙果软件
 

时间: 北京时间2008年02月22日 晚上 7:00-9:00 

嘉宾: 郭亮

相关资源:

<<QTP入门与实践>>讲座视频
测试脚本源码
QTP入门与实践讲义

交流范围记录:

斑竹 说:郭老师来了
斑竹 说:那我们要开始了
郭玉鹏 说:ok
斑竹 说:郭老师看到了么
段美玲 说:66
Guo Liang 说:这不好意思,久等了
斑竹 说:要多给大家讲讲啊
斑竹 说:迟到了
郭玉鹏 说:讲吧
斑竹 说:我先介绍一下本次交流的内容:
sophia 说:没关系,重要人物都是最后出场
Guo Liang 说:呵呵,好的
斑竹 说: 通过在线的方式交流关于MI公司自动化测试工具Quick Test Professional 的一些应用经验,并对先前发布的视频<<QTP入门与实践>>进行答疑,答疑范围包括但不限于本视频,参与讨论者可以提出自己既往在使用QTP过程遇到的任何问题。本次交流适用于一切对QTP或自动化测试感兴趣的测试行业从业者。
斑竹 说:http://www.uml.org.cn/MyProcess/GuideView/qtpbase.htm
Guo Liang 说:我这次没有刻意准备什么要讲的内容,主要是回答一些关于视频的问题,和大家平时工作中遇到的
斑竹 说:主讲嘉宾:郭亮,高级软件测试工程师
熟悉软件生命周期以及过程改进相关知识。对自动化测试工具的开发使用以及软件测试管理具有丰富的经验。
主要项目经历:
日本野村证券公司开发+测试,MS 公司 MSN产品测试,IBM公司Rational产品测试, 港湾网络公司路由器产品测试,美国在线公司客户端产品测试。
技术能力及研究方向:
基于Linux的自动化测试(目前主要是SHELL)
Windows的GUI/API/CLI相关自动化测试。以及测试框架的探究。
软件测试管理/过程改进(CMMI)
斑竹 说:好的
斑竹 说:开始了
郭玉鹏 说:
斑竹 说:大家可以问问题了
郭玉鹏 说:关于检查点的设置,不是很清楚
斑竹 说:具体说说
郭玉鹏 说:关于检查点的设置,不是很清楚
Guo Liang 说:具体哪方面不清楚?QTP提供了若干种检查点,就如同我们手工测试的时候一样,去检查各种UI,数据是否是预期的值,当然你也可以通过自己在专家模式下写一些函数来完成对功能的检查
郭玉鹏 说:比如我向数据库中插入了一条记录 ,返回信息是“保存成功”,怎么设置检查点?
Guo Liang 说:Insert->database checkpoint
Guo Liang 说:你需要用一个sql语句查询数据库,得到你指定的数据,然后和软件运行的UI中提供的结果数据进行比较
郭玉鹏 说:那这样的话,每次插入一条记录,那都必须设置数据库检查点
郭玉鹏 说:这个知道
Guo Liang 说:最后就是在这个函数里面添加Msgbox " "
郭玉鹏 说:我就是觉得添加数据库检查点比较麻烦
Guo Liang 说:这要具体情况具体分析,比如你的要检查的数据在软件UI中是有规则的
Guo Liang 说:这样你就可以一次性在数据库中得到一个结果集,然后对软件UI中得到的数据通过简单的代码实现逐个比对
郭玉鹏 说:那如果测试人员不知道提交的那个表单是向哪些表中插入了记录,怎么半啊
Guo Liang 说:如果一切都无规则,那就需要逐条验证了,写过一些简单的循环
Guo Liang 说:就应该知道我们使用QTP就是在不断寻找相同的规则,对有规则的数据加以循环控制,反复执行。
Guo Liang 说:如果不知道提交到哪儿去了,那就不能使用QTP来完成检查,这个很明显,你看看QTP的数据库检查点的UI就知道,他只提供了2种查询方式
郭玉鹏 说:可是做界面测试的时候,并不是所有的人都知道这个应用的表的结构,也可能是表的结构太复杂了
郭玉鹏 说:意思是做测试必须很清楚的知道这个软件的表的结构了?
Guo Liang 说:表的结构复杂也不会复杂到哪儿去,或许你说的是数据库比较复杂吧,如果非要我讲这个道理,就比如不知道方向盘在那儿,开车的时候是没法转弯的
Guo Liang 说:我可以保证我回答你的问题是一定的,我用这方面很久了,必须要知道表的情况。最起码知道表的名字
郭玉鹏 说:
Guo Liang 说:比如在oracle下你可以用desc tablename来罗列表的字段,然后自己分析
Guo Liang 说:基本上就是这样的了。呵呵
郭玉鹏 说:这几天才用到数据库检查点
Guo Liang 说:我知道QTP复杂就复杂在最开始学习的时候,其实真正入门了,就一切都很简单,而且功能也应该称作比较强大的
郭玉鹏 说:好像就我在哦
Guo Liang 说:哦?
psychic1016@hotmail.com 说:讲讲基础吧 没接触过测试 哈哈 白盒测试与黑盒测试指什么啊
斑竹 说:其他人呢
斑竹 说:有什么问题说说
斑竹 说:测试经验的也可以的
斑竹 说:不一定是qtp
psychic1016@hotmail.com 说:讲讲基础吧 没接触过测试 白盒测试与黑盒测试指什么啊
Guo Liang 说:白盒测试泛泛的理解就是代码级的测试,黑盒测试就是你接触到的是UI,不需要关心内部实现,一个最好的解决你的问题的方法是去zhidao.baidu.com
psychic1016@hotmail.com 说:thank you
sophia 说:老师我知道TCL,你就讲讲你所知道QTP的知识吧,我们都看着呢
郭玉鹏 说:讲讲常见的测试工具的优缺点吧 就知道个qtp是测试web的 其他的就不知道了
Guo Liang 说:我这里看不到有多少人在这个会议中,为了提高人气,我可以回答任何测试相关的话题,包括找工作。呵呵
Guo Liang 说:我做测试5年了,一般的都接触过了,大家尽管问吧
Guo Liang 说:winrunner你一定听说过,他是QTP之前mercury推出的功能的自动化测试工具
geto 说:能说说qtp和winrunner的差别么
Guo Liang 说:还有loadrunner也是自动化测试工具,是针对性能的。
Guo Liang 说:winrunner我接触的很少,不好做比较
geto 说:有哪些变化,请教,
Guo Liang 说:目前hp收购了mercury以后,已经全面
Guo Liang 说:支持qtp了,不再推广winrunner了
geto 说:
段美玲 说:那讲讲lr咯
geto 说:如果界面控件变化了
geto 说:怎么能够最少的维护测试脚本
geto 说:自动化测试的老问题,不好解决?有什么高见么
Guo Liang 说:umlooo:这就涉及到一个实用水平的问题
Guo Liang 说:QTP提供了两种编写脚本的方式,一种是录制,一种是专家模式,自己使用vbscript编写脚本代码
Guo Liang 说:软件的UI发生变更是最常遇到的问题,维护则是首先要考虑的,QTP里面有一个对象库的概念,不知道大家是否清楚
geto 说:不是很清楚
郭玉鹏 说:要单独的维护对象库吗?
段美玲 说:对象库这用些疑惑
Guo Liang 说:对象库是 per action的,也就是每个action都会使用自己的对象库。但是QTP提供了一种方法,叫做共享对象库,也就是说所有的Action都可以使用同一个对象库
Guo Liang 说:这样当软件UI变更的时候你只需要维护一个对象库,就可以让所有action中的代码正确地找到对象
郭玉鹏 说:要在对象库里面找对象 相当难啊
Guo Liang 说:还有就是关于代码方面,事先也要考虑到后期的变更,要尽量使用变量,不使用常量,减少代码的变更对维护带来的麻烦
Guo Liang 说:还有就是编写脚本的时机
geto 说:对于控件标示的修改,有什么好的维护策略么
Guo Liang 说:一定要在软件已经基本稳定,并且不会有大规模的UI变更的时候开始进行
Guo Liang 说:QTP有专门的维护 合并 管理 对象苦的工具
Guo Liang 说:在对象库里找对象难的问题:在添加对象的时候就要考虑到这个问题
Guo Liang 说:应该把所有的对象根据软件的模块分类,每个添加进来的对象要有一个统一的命名规范,最好使用匈牙利命名法。
郭玉鹏 说:一个软件,没有一年,是不是不应该使用自动化?这样对吗
Guo Liang 说:还有就是对不同软件版本可以对 对象库也做对应的版本控制
郭玉鹏 说:版本控制?
Guo Liang 说:这不一定,看你的资源情况,如果测试工程师对QTP这个工具非常熟悉,并且你们的软件本身需要自动化的地方不是特别多,用QTP来做回归测试还是非常有效的
meng_xiaobo@163.com 说:高级测试工资是多少啊, 是不比程序员强多了
Guo Liang 说:project1_object1_001
Guo Liang 说:明白了吗,对应不同的软件版本,生成不同版本的对象库文件
Guo Liang 说:工资的问题我稍后再说,我看一下刚才又没有露掉的问题
geto 说:对于不能识别的对象
geto 说:怎么处理
geto 说:界面对象
Guo Liang 说:刚才有个人问到lr,我相信uml会专门安排lr的讲座的,先不回答这个了。
Guo Liang 说:没有遗漏的了吧?下面开始不能识别对象的问题
Guo Liang 说:不能识别对象有两种理解,一种是QTP没有相关的支持的插件,录制的对象都是以坐标生成的控件。(解决办法见原因)
geto 说:解决方法就是 通过坐标
geto 说:那就是要维护坐标了?
郭玉鹏 说:是不是只能用低级录制了?
郭玉鹏 说:坐标?
Guo Liang 说:还有一种是由于识别属性在运行期间变更,导致找不到对象,这是最常见的,尤其初学的时候,很多人因为无法回放成功而放弃学习QTP
郭玉鹏 说:没用过呢 有没有例子呢
Guo Liang 说:第一种情况的解决办法是:安装相关插件,重新录制。 低级录制 放弃使用QTP作为本软件的测试工具
geto 说:坐标的确太不好维护了
geto 说:delphi能用qtp么,支持到什么版本
geto 说:delphi6以后行么
Guo Liang 说:对于第2种情况就需要自己不断地总结,最常用的就是spy工具,只要你用心的把软件运行态的对象属性和对象库中的对象属性进行比较,就能够找到差别,修改以后就可以重放脚本了。
Guo Liang 说:delphi的我没有测试过,很多人说不支持,具体是否支持请查询官方网站,或者最简单就是用f7看一下是否有合适的属性帮助你识别对象。
Guo Liang 说:关于工资,我相信是根据企业而言的,我做了这么多年下来,其实感觉运气也是很重要的
geto 说:软件运行态的对象属性和对象库中的对象属性进行比较
geto 说:这个要自己进行么
geto 说:要是那样的话够累的
Guo Liang 说:很多年前我做的一个职位给我4000元,后来我离职了,接替和我做一抹一样工作的人拿到8000元的工资。这就是运气,不过有一点,你知道多掌握一些知识,会有公司给你开出合理的价格
Guo Liang 说:是的,要自己进行,因为不是每个对象都会经常发生变更
sophia 说:等我学完了测试我会向你狂问题
Guo Liang 说:即便在运行态的时候,你对象库里的对象都是UI控件,这个发生动态变更的机会是比较小的,所以工作量也就没有那么大
geto 说:
geto 说:的确是
Guo Liang 说:找不到对象的情况应该还有很多,这需要自己不断总结,有些情况我一时想不起来了
Guo Liang 说:如果对于QTP感兴趣,我建议你一定要花一些时间研究一下主要功能的识别原理,这样方便你在出错的时候从容应对
sophia 说:
geto 说:好的
geto 说:问个不太厚道的问题,用qtp能进行网络攻击么,哈哈
段美玲 说:可以现场讲讲主要功能大识别原理不?
Guo Liang 说:QTP不是一个你今天学了明天就马上可以用到的工具,但是你它可以帮助你从另一个角度理解测试,尤其是自动化测试。如果你学得够细致,你可以了解到其他的很多计算机相关的知识,qtp的价格很高,或许只有比较大的外企才会应用到。但是学了肯定会对你的测试职业有很大的帮助
Guo Liang 说:关于攻击:我建议你使用loadrunner,那个效果比qtp要好得多
郭玉鹏 说:loadrunner 不是负载测试吗?
郭玉鹏 说:能攻击系统?
Guo Liang 说:loadrunner通过压力攻击。qtp通过串改运行态数据攻击。
Guo Liang 说:这个就不多说了,咱们学习先以工作为主吧
sophia 说:哈哈,老师我得去看看
郭玉鹏 说:当时我认识的一个人测试google,模拟50个用户,直接封ip了
段美玲 说:可以讲讲lr的结果分析?
郭玉鹏 说:恩那么多图图怎么看啊?
Guo Liang 说:下载一个结果分析的手册把。lr不是你光看手册就能学会的,你需要对软件知识有比较丰富的理解,最好的学习方法是能够有机会和开发人员共同寻找瓶颈并最终解决问题,这样有助于你在lr方面的进步
郭玉鹏 说:哦好
geto 说:同意
Guo Liang 说:如果对性能测试比较感兴趣
geto 说:性能测试应该知道可能的性能评测点和问题的可能性
Guo Liang 说:我建议可以使用windows 自带的 performance工具,至于压力测试就需要自己模拟了。
郭玉鹏 说:一个软件主要还是功能测试吧? 性能测试比较少吧?
Guo Liang 说:我不建议使用盗版,所以如果不是必须,就别用盗版lr了。呵呵
Guo Liang 说:性能测试和功能测试要看针对什么样的产品,比如网站服务类的产品,或者msn messenger就要很关注性能
Guo Liang 说:因为的确存在着成千上万的用户并发访问
Guo Liang 说:并发访问
Guo Liang 说:很多年前msn就曾经达到过同时在线1000万的数量,这样的软件就要很关注性能
geto 说:是啊
郭玉鹏 说:哦这样啊
geto 说:日历控件qtp识别么
geto 说:复杂的控件,如果有内部逻辑
Guo Liang 说:关于功能,现在很多小公司采用agile(xp)开发模型,他们主要关心的是用户需求,快速开发,自己的产品能够最节省成本的快速开发满足用户功能需求,这样的产品就要更多关注功能
Guo Liang 说:关于日历控件,我用过的日历控件一般都是可以识别的,能否识别主要是看你得到的用户界面是否是被QTP支持的,比如html,windows application这些支持的ui对象不管用来做成什么都可以被qtp支持
Guo Liang 说:还有就是复杂的有内部逻辑的。控件本身是不会有逻辑的,如果意思是动态控件的话就可以采用正则表达式的方法,找到一个能够描述这个对象的模式就可以了,qtp的对象描述支持正则表达式
郭玉鹏 说:
geto 说:好的
geto 说:知道了
郭玉鹏 说:agile 是敏捷开发、?
geto 说:以前搞过测试不少呢
Guo Liang 说:我想知道现在大概有多少人在线,可以建议让大家尽快,尽量多的提问题,机会难得啊。呵呵
geto 说:现在是25人在线
Guo Liang 说:agile是敏捷,没错
郭玉鹏 说:直接进测试行业呢 还是先开发再转测试?
Guo Liang 说:进入开发就不要转测试了。---我的建议
geto 说:什么时候用qtp,什么时候不用,如果用上了,什么时候要放弃,
郭玉鹏 说:我进开发的目的就是为了转测试,不可以吗?
geto 说:结合项目过程讲讲
Guo Liang 说:关于qtp的使用与放弃,这就要在编写测试方案的时候考虑到了,其实无非是成本的问题。中途放弃必然浪费成本。除非很有钱。在最初准备使用qtp的时候你可以考虑人员对工具的熟悉情况,qtp对被测试软件的支持这些问题
孔祥楼 说:我想问一下有关验证码的问题,除了让开发做一个万能验证码或者先屏蔽验证码,还有没有别的方法可以解决
Guo Liang 说:qtp是一个价格很高的工具,在你决定购买之前可以申请试用,在这个期间,就要对这个工具进行全面的评估。最好是作出一些对被测试软件产品进行自动化测试的演示,然后决定是否购买使用。
郭玉鹏 说:这个软件需要多少钱啊?
Guo Liang 说:关于中途放弃,我还没找到中途放弃的理由,除非在项目切换的时候选择其他工具,否则一个项目既然已经启动了,并决定使用qtp,那么中途放弃意味着增加了整个项目失败的风险
geto 说:不是完全的放弃吧
Guo Liang 说:软件需要多少钱就要联系hp了。呵呵
geto 说:什么情况用,什么情况不用
geto 说:比如手工测试的结合
Guo Liang 说:放弃的理由就有很多了,举个例子,比如winrunner即将被qtp替代一样,这个时候有些公司的项目就放弃了winrunner转向了qtp
孔祥楼 说:我想问一下有关验证码的问题,除了让开发做一个万能验证码或者先屏蔽验证码,还有没有别的方法可以解决
geto 说:这个问题不错
Guo Liang 说:关于使用的条件是在测试项目开始的时候就要计划好的,要有振兴的制定一个策略。关于策略的制定就需要头脑风暴或者项目组内专家来决定了,总之,自动化的程度越高,意味着测试的风险越大
geto 说:是啊
孔祥楼 说:看样子是有更好的办法了?期待中....
Guo Liang 说:你好,蓝天伟
蓝天伟 说:你好
Guo Liang 说:这里是uml组织的关于qtp的讨论,欢迎你加入
sophia 说:现在一般公司 做集成测试用TCL的多吗?或者说很少有公司做集成测试?
郭玉鹏 说:TCL是什么工具啊啊?
蓝天伟 说:MainAction 如何动态加载子action
孔祥楼 说:我还有一个共享对象库的问题,在QTP8.2中我选择了下面那个共享的,上面那个选项就置灰了,怎样还能再选回去呢?
蓝天伟 说:大家有办法实现吗
蓝天伟 说:今天早上我搞了好久也搞出来
Guo Liang 说:terminal console language?这个语言我在做数据通信方面的测试的时候用得比较多,主要是用逻辑组织命令的时候用的,你需要调查一下他的适用情况,我不是很清楚
蓝天伟 说:不是这个语言
Guo Liang 说:8.2的我已经很久没用了,不好意思,记不清楚了
蓝天伟 说:TEST CONTROL LANGUAGE
sophia 说:Tool command language
sophia 说:是一种解释性语言
sophia 说:命令性语言,打错了
郭玉鹏 说:MainAction 如何动态加载子action????意思是当一个条件的时候调用1个action,另一个条件的时候调用另一个action?
Guo Liang 说:呵呵,你们说得我都接触比较少,现在各种语言很多,请查阅相关手册吧
蓝天伟 说:哈哈 我也忘记了 记不请了
Guo Liang 说:蓝天伟,刚才你发的问题请重复一下,那个帖子的问题怎么了?
蓝天伟 说:就是不用call to copy action插入 而是通过写函数实现
孔祥楼 说:9X比8X的好用吗?我用8.2的时候可以用MTM,9X不支持,有什么其它的工作可以实现同样的效果吗?
Guo Liang 说:通过函数添加一个新的action,并且调用它是吗
郭玉鹏 说:MainAction 如何动态加载子action????意思是当一个条件的时候调用1个action,另一个条件的时候调用另一个action????????
sophia 说:MainAction 如何动态加载子action
用描述性编程,可以实现动态加载对象库文件,
但现在想实现:如何在mainaction里动态加载子action?
主要面临问题是,QTP里用insert existing action来把action写死在代码里的,不知QTP有没有提供灵活的对象库模型
大家有何想法,讨论讨论....
蓝天伟 说:也就是不用手动的操作来实现调用其他TEST中的ACTION
蓝天伟 说:不是新建一个ACTION 调用就可以了
Guo Liang 说:除了我跟你说的通过vbscript写一个function对物理文件进行复制并且对配置文件进行修改,我目前没有其他的办法。
郭玉鹏 说:我不知道你为什么样这样做?业务必须要让你这样实现脚本吗?
蓝天伟 说:好像单改一个action0还不可以吧 你试过没
蓝天伟 说:哎 我是帮别人看看
蓝天伟 说:我们的框架是用FUNCTION的
郭玉鹏 说:一般用call 一个存在的action
Guo Liang 说:关于mtm,有人用过说:MTM8.24+QTP9.2,一切正常
Guo Liang 说:我很少使用,到9.2以后我就不再使用了
郭玉鹏 说:MTM?什么东西?
蓝天伟 说:我的就不启不了
Guo Liang 说:你可以把8.2里面需要的小工具都拿到9.2或以后的版本来运行试试看。
蓝天伟 说:我的就 启不 了
郭玉鹏 说:9.2比9.1的有什么新的特性
sophia 说:在网上一搜就出来了
Guo Liang 说:蓝天伟,我跟你说的方法我自己做过的,关于你的这个问题我们周一在讨论巴,你有什么要跟大家分享的qtp的使用知识吗
蓝天伟 说:那我们就讨论下DP吧
Guo Liang 说:我是受uml邀请跟大家分享qtp的,你说的问题相对比较复杂,这里暂时谈一些入门的或者小技巧之类的东西
蓝天伟 说:大家赞成DP吗
孔祥楼 说:MTM就是一个可以把很多脚本放在起,它自动把你的脚本一个一个的回放
孔祥楼 说:如果用9.2有什么方法可以这样回放脚本吗?
Guo Liang 说:test batch可以回放多个test,这个在9.2里面仍然存在
Guo Liang 说:test batch runner
Guo Liang 说:如果你说的脚本是vbs文件,你可以通过qtp的自动化对象模型,写一个vbs进行一些初始化工作,并逐个调用。
Guo Liang 说:关于描述性编程。蓝:你有什么问题或者要共享的知识吗
Guo Liang 说:尽管说阿
Guo Liang 说:DP for description programming
蓝天伟 说:我是想问大家支持吗
Guo Liang 说:呵呵。9点结束,你得抓紧时间提问或者分享
孔祥楼 说:是不是装了IE7,9.2就不能用了
蓝天伟 说:大家都没反映 这里是不是新手更多一些啊
Guo Liang 说:有些冲突,最好使用ie6,并且随时留心官方支持
sophia 说:差不多吧
Guo Liang 说:我提一些关于qtp入门的建议,如果大家对这个工具有兴趣,并且自己学起来吃力,我建议可以去找一个价格比较低廉的培训机构,面对面的沟通可以很快得让你入门,以后的事情就是自己花的时间多少的事情了
蓝天伟 说:呵呵
Guo Liang 说:蓝天,介绍一下你得qtp学习经验
Guo Liang 说:给大家分享一下,怎样入门。
sophia 说:把知识共享
郭玉鹏 说:其实手把手教是最快的
蓝天伟 说:我也没有啥经验 其实到现在我觉得我对QTP还 不是很了解
sophia 说:咱们是那学员
geto 说:对于动态控件,如何尽量避免控件生存期和qtp脚本不一致的问题
郭玉鹏 说:现在的测试管理工具用QC多还是用TD多?
蓝天伟 说:至于学工具 都是差不多的 先看基础文档 再做简单的练习 在做复杂点的 架构方面的 最后就是框架层了
geto 说:因为测试场景多,大部分都会发生变化
geto 说:如何让qtp保持有效的覆盖,同时避免大量的脚本修改或者录制工作呢
geto 说:各位有什么建议
Guo Liang 说:会消失得动态:在生存态的时候使用
特征变更的动态:正则表达式可以确保全程使用
sophia 说:Guo liang我能否知道你的MSN吗?有问题可以请教一下,谢谢了!
郭玉鹏 说:恩告诉大家一下了
geto 说:会消失得动态:在生存态的时候使用,如果生存态不好预计呢
geto 说:怎么办
蓝天伟 说:提的问题挺专业啊 呵呵
Guo Liang 说:QC和TD的区别就是在与hp的BPT概念的引入,还有一个dashboard
geto 说:详细说说。。
Guo Liang 说:这两个工具的选择就是看你的需求了,QC的case管理功能基本上就是td的翻版
蓝天伟 说:让qtp保持有效的覆盖--数据驱动
郭玉鹏 说:BPT和dashboard什意思
sophia 说:Guo liang我能否知道你的MSN吗?有问题可以请教一下,谢谢了!呵呵,也可以悄悄发给我
郭玉鹏 说:发给我们一个吧
Guo Liang 说:business process ...记不清楚了,就是hp提出的一个业务逻辑模型,他抛弃了传统的对软件模块进行分析测试的方法,站在客户的角度,针对业务进行测试
Guo Liang 说:dashboard是一种数据统计图,对于各种测试数据都能够生成很好的报表,用来对付你的老板。呵呵
斑竹 说:老板看报表
斑竹 说:哈哈
Guo Liang 说:当然广泛意义的讲是为项目提供可靠依据
斑竹 说:时间快到了
斑竹 说:大家还有什么问题么
Guo Liang 说:我不是hp的推销员,至于hp的产品特征,大家看官方网站就可以了
sophia 说:老师我的问题没回答呢
孔祥楼 说:谢谢老师的回答
sophia 说:谢谢了
Guo Liang 说:感谢蓝天伟热情加盟,大家记住有什么winrunner的问题一定要抓住他啊,别让他跑了
斑竹 说:好,谢谢郭老师的回答,也感谢大家的参与,
Guo Liang 说:大家有什么问题就多找找文档吧,多花些时间,没有学不会的东西,我也不是所谓老师,只是有一些经验
斑竹 说:不早了,还有人没吃饭吧
郭玉鹏 说:万分感谢
Guo Liang 说:很高兴和大家交流
Guo Liang 说:谢谢
斑竹 说:呵呵
蓝天伟 说:大家的问题比较专业 我还真怕回答不出来
斑竹 说:谢谢
Guo Liang 说:dinner time
Guo Liang 说:have a nice evening
孔祥楼 说:总之很谢谢,回答的两个问题,够我想一段时间的了
斑竹 说:好了,今天就到这里,欢迎关注我们的后续技术交流,有现场讲座,也有在线交流
斑竹 说:祝大家晚安
......