51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

楼主: lsekfe
打印 上一主题 下一主题

【你来问我来答第88期】:如何做好自动化测试技术和区块链技术?(活动结束)

[复制链接]

该用户从未签到

21#
发表于 2017-12-7 10:20:57 | 只看该作者
小文0111 发表于 2017-12-4 11:31
老师你好,我想问下你们公司平时做区块链底层技术平台研发主要做什么项目,能简单的介绍下吗?

区块链主要有几个特性:①、不可篡改;②所有节点公开全账本;③账户信息持续可追踪;④对等网络,没有上帝角色(什么系统管理员、数据库管理员、公司CEO等)。我们认为区块链会成为未来10年互联应用的一个底层技术,各行各业的各种项目,都可能会找到应用点。就比方说,商品溯源,传统溯源系统采用集中数据存储数据,其实这样的数据对数据库管理员来说/或者对运营公司来说,想怎么修改,就怎么修改,那它的数据可信度有多少?再举个例子,支付宝,马云就是上帝,这个上帝可以让你的支付宝账户瞬间从0变成1000万,只要他愿意。。。一句话,我相信“人之初,性本善”,但是难保不会从善变恶吧?
回复 支持 1 反对 0

使用道具 举报

该用户从未签到

22#
发表于 2017-12-7 10:50:42 | 只看该作者
本帖最后由 cwb007 于 2017-12-7 12:45 编辑
小浩321 发表于 2017-12-4 11:35
我很早就对"自动化测试"有了概念,它的好处简直太多了:解放人力、避免人为因素干扰、更全面的检查问题...
...

问题比较多,一个一个回答:
1、自动化测试也好,手动测试也好,只是两种不同的手段。都无关测试数据怎么来的问题。
那么测试数据怎么来?
还是要有资深的测试分析设计人员,根据需求,根据用户场景去设计测试场景、测试用例、测试数据。
如果对测试数据要求已经很明确了,需要的数据量比较大,则可以考虑工具化生成。
这个资深测试分析设计人员,必须掌握系统功能架构,设计指标要求,也要掌握用户场景和需求,还要掌握测试需求分析及用例设计的工程方法,这个才是测试领域真真高端的工作。
2、如何保证数据完整性:资深的测试分析设计人员这个人员很重要,他要对他自己输出负责,自己输出后,还要组织测试团队/设计/开发人员对结果进行评审,根据意见去评估修改。一般来说,能够经得起PK的,也是比较完备了的。
3、功能细节变动,用例需要变动也很正常,不同的工具不同的用例组织方式(很脚本编写方式),肯定工作量是不一样的,一般来说“业务驱动脚本>关键字驱动脚本>数据驱动脚本>共享脚本>结构化脚本>线性脚本”(>表示优于)。

所以,测试代码不可能与业务脱钩(脱钩了还测试什么?),只是考虑如果让测试代码更容易编写和维护刷新的问题。我很认可你的观点“不维护的测试代码等于垃圾”。
其实测试是一个系统化的工程,一个项目如何更容易做好自动化测试:①必须提一些可测试性的需求给项目并确保落地;②测试分析设计才是关键中的关键(要输出测试方案和用例标题的),自动化和手动测试都只是实现测试方案的不同手段;③最好采用每日构建方式进行项目研发,团队要确保每天自动化用例达到90%以上的通过率(测试要优先刷新自动化用例,开发要优先修改自动化发现的重要BUG,老功能都搞不定,新功能就不要开发了);
回复 支持 反对

使用道具 举报

该用户从未签到

23#
发表于 2017-12-7 10:56:46 | 只看该作者
MilgGtery 发表于 2017-12-4 11:42
你好,如果测试视频网站,需要考虑哪些问题?
同事面试B站被问到怎么测试B站视频,回来聊到这个。发现网上 ...

视频网站,我考虑的是两个层次:①把视频去掉,我们该测试什么?②视频又该测试什么?
对于网站,要考虑是动态内容还是静态内容,两种测试方式和方法肯定不一样,具体可以以后细聊,此处不作赘述。
对于视频,是视频网站的关键,视频能不能打开是首要要的问题,其次是否流畅/马赛克/音影同步对体验来说是重要问题;再次,弹幕、评价、收付费等也需要重点测试吧?
我能想到的就这么多。
回复 支持 反对

使用道具 举报

该用户从未签到

24#
发表于 2017-12-7 10:58:59 | 只看该作者
八戒你干嘛 发表于 2017-12-5 09:40
老师你好,我这里有个关于自动化的运行问题请指教?
Selenium python,unittest 测试结果总是 Ran 0 tests ...

应该是脚本没有执行吧?是不是你执行框架的问题?
回复 支持 反对

使用道具 举报

该用户从未签到

25#
发表于 2017-12-7 11:04:07 | 只看该作者
乐哈哈yoyo 发表于 2017-12-5 09:44
自动化工具 关于使用 robot framework 的一个配置问题
项目中使用robot framework做接口自动化测试
目前 ...

jenkins是个不错的工具,可惜我没有具体用过,我简单查了一下资料,应该是脚本的问题。据我了解,jenkins 判断是否失败的标准可能是 shell 脚本的 exit code 是否为0。为0表示成功,否则失败。你按照这个思路去排查一下。
回复 支持 反对

使用道具 举报

该用户从未签到

26#
发表于 2017-12-7 11:13:29 | 只看该作者
yangmengbo 发表于 2017-12-1 14:38
请问现在想接触自动化测试,可以推荐几本相关的书籍吗、谢谢

对于想学习自动化测试技能的,我希望大家不要走入误区,工具都是其次,关键是测试分析和设计的方法和自动化测试理论。说实话,用什么工具,我从来不做硬性要求。如果掌握了测试分析和设计的工程方法,能在自己的项目里使用,再能深入理解脚本分类的几个概念,我觉得你可以自己去选择或者打造最合适的工具了。
回复 支持 反对

使用道具 举报

该用户从未签到

27#
发表于 2017-12-7 11:18:44 | 只看该作者
MilgGtery 发表于 2017-12-4 11:47
你好,求问 IOS 的 UI 自动化测试如何实现?
调研了WebDriveAgent,在IOS10以上系统,真机执行,发现坑很多 ...

测试框架不稳定的话,还真是没有好的办法,因为你依赖它。选用其他框架,或者如果是开源框架你可以修改它的代码自己去把问题解决了。当然,如果你们研发能力足够,也可以采用集成多框架方式。对于终端不稳定问题,最好的一种就是重启终端,将中断的用例再执行一遍。
回复 支持 反对

使用道具 举报

该用户从未签到

28#
发表于 2017-12-7 11:22:18 | 只看该作者
悠悠小仙仙 发表于 2017-12-5 09:53
求教下大神在自己的公司里目前使用的自动化测试都有哪些?想做个对比,弥补不足之处!

你是想问华为内部用了哪些测试工具呢?还是想问题现在的公司?
都回答一下:
华为内部用商业工具/开源工具/自研工具的都有,毕竟那么多类型的产品,8万研发人员,其中测试工程师也有几万人。
当家的这边,我们自己就做了一套web/app的自动化测试系统,当然是用自己的。
回复 支持 反对

使用道具 举报

该用户从未签到

29#
发表于 2017-12-7 11:25:59 | 只看该作者
姿态 发表于 2017-12-4 11:27
网上我看到项目使用区块链的八个基本条件,那也就是说如果不满足就不能做吗?主要公司里项目牵涉到这块,所 ...

之前的回答,没有系统介绍区块链的特性,这里系统说一下(这是别人的总结),你的项目只要觉得很有必要用下面哪怕一点,都是可以的:
(1)第一是去中介化/中心化的信任,这也是反复强调的。
(2)第二个特征是它的稳定性、可靠性、持续性,因为它是一个分布式的网络架构,没有一个中心节点可以被打击或者攻击,所以在整体的技术布置方面有着更强的稳定性、可靠性和持续性。
(3)第三它的强安全、共识机制不需要第三方的进入,而是通过一个技术来达到,先前预定的一个技术来达到整个交易的完成。
(4)第四是交易的公开透明和不可篡改性,今天下面有很多业界的实践者跟大家分享这些特征,所以这是区块链的四个特征。
回复 支持 反对

使用道具 举报

该用户从未签到

30#
发表于 2017-12-7 11:28:39 | 只看该作者
悠悠小仙仙 发表于 2017-12-5 09:57
Appium 为一个项目做自动化的时候,目录结构有什么要注意的吗?
第一次做自动化,没弄明白目录应该是怎样的.
...

两个脚本单个执行成功,串在一起执行失败,肯定是没有做环境初始化了。做一下环境初始化就好。
回复 支持 反对

使用道具 举报

该用户从未签到

31#
发表于 2017-12-7 11:52:28 | 只看该作者
草帽路飞UU 发表于 2017-12-5 10:04
不是很懂区块链技术,能请你简单的介绍下吗?同时发展如何?

区块链技术,我简单讲一下。
第一个概念“链表”:如果你学过数据结构,那肯定知道链表的概念,区块链就是一个链表。
第二个概念,就是hash,理论上认为通过hash运算,一份数据有且只有一个hash值(hash值是一个固定长度的标准串,不同算法生成的位数不一样),而且一个hash值仅对应唯一的一份数据(对这份数据的任何修改,重新hash后,hash值都会变)。
第三个概念:对称加密/非对称加密,对称加密就是加密秘钥,与解密秘钥相同,解密算法是加密算法的逆算法。非对称加密,有两个秘钥组成的秘钥对,一个叫公钥,一个叫私钥,由私钥可以计算出公钥,由公钥无法计算出私钥,私钥加密的数据只有公钥能解密,公钥加密的数据只有私钥能解密。公钥可以发给别人,如果我持有了你的公钥,别人给我发一段加密的声明,结果用你的公钥能够解密,我就知道这段声明是你真实意思的表达(至少是你编写加密的,你私钥只有你持有),这个就叫签名验证。
很有意思的是,这三种技术很早以前各自就出来了,直到2008年一个叫中本聪的网友(确实是日本名,但是是不是日本人不知道),将这三种技术结合,设计了一个数字货币支付解决方案,并开发一段代码开源试运行(对就是比特币),这个技术方案就叫区块链。
首先,每个人都可以生成一个私钥(私钥地址空间比宇宙中的沙子还多,所以只要足够随机离线生成不担心重复),然后由私钥计算公钥(理论上地址空间和私钥是一样的),公钥再经过hash生成钱包地址。这样你钱包里的钱只有你能动,别人都没有私钥。
其次,链表的前一个节点(也就是区块)内容经过hash后,存入下一个节点,这样形成新节点对前序节点内容层层锁定(内容-hash值相互唯一对于),而且这个hash值还必须有多少0的要求(节点内容+一个特定随机数,挖矿就是找到这个随机数,来计算hash),这样这条链就具有防篡改的特性了。
再次,每个一个节点,都只认可hash符合要求,最早生成的区块组成的最长链,这个就是分布式共识机制;
以上就是区块链技术关键内容。
业界一致认为,会成为未来20年的关键底层技术。
回复 支持 反对

使用道具 举报

该用户从未签到

32#
发表于 2017-12-7 12:27:10 | 只看该作者
一纸荒年 发表于 2017-12-6 10:10
近来领导头脑发热,各种推动自动化测试,还口口声声要强制把核心程序自动化测试覆盖率作为考核指标。然而, ...

在完备测试情况下,我认可你“成本不会少宇开发被测系统”的观点。其实也就国内不重视测试,要是做完备测试可能投入到测试工作的综合工时,比开发综合工时还多。
项目自动化测试现在一般都采取每日构建测试方式,至少也要每周,再长基本上没有持续成功的项目。
我们还是要认识到,自动化不是万能的,有些测试更适合人工,不要为自动化而自动化,反而影响自动化的效果。分析识别很重要。
回复 支持 反对

使用道具 举报

该用户从未签到

33#
发表于 2017-12-7 12:31:25 | 只看该作者
My_JIE 发表于 2017-12-6 10:16
你好,关于区块链接有几个问题想问下,谢谢。
1、区块链的发展前景如何?
2、区块链的安全问题怎么样?

1、区块链的发展前景如何?
     业界有比较一致的看法,会成为未来10~20年的关键底层技术。
     在各行业都可能会有很好的应用。
2、区块链的安全问题怎么样?
     比中心化系统安全得多,目前看,内鬼和外鬼都没有攻击成功案例。
3、区块链的效率高吗?
    效率肯定比不上中心化系统,因为有一个决策中心,其他必须信任决策中心。区块链要在对等网络中形成共识的,效率肯定比不上中心化系统。
回复 支持 反对

使用道具 举报

该用户从未签到

34#
发表于 2017-12-7 12:37:24 | 只看该作者
感悟时分 发表于 2017-12-6 10:22
想入门,都找不到突破口,应该学习哪些知识,这个技术是由哪些编程语言实现的呢,请不吝赐教?

你是指区块链嘛?还是自动化?

其实,这两种技术和语言无关。
比特币,最早的代码是C/C++。说实话,你若理解原理和协议,完全可以用其他语言写一个,然后接入现在的比特别网络(实际上就是有人实现了其他语言的)。
以太坊,节点版本有C/C++,有go语言。

对于自动化,一样的。

现在的项目,一般都是开源的(区块链代码都是可以下载到的,自动化也有很多开源项目),不妨先学习理论原理,然后探索接口调用,接下来深入学习代码。根据你的需要,可以学到某一个阶段。
回复 支持 反对

使用道具 举报

该用户从未签到

35#
发表于 2017-12-7 12:39:57 | 只看该作者
做自己的女王ヽ 发表于 2017-12-6 10:27
现在有哪些开源的区块链技术?他们有什么联系和区别?

比特币,以太坊、瑞波链、量子链...都是开源项目,都可以下载到代码。

比特币是首个区块链项目,以太坊提供出了在区块链上增加虚拟机(可以执行智能合约)的概念,想学习,学习这两个就好
回复 支持 反对

使用道具 举报

该用户从未签到

36#
发表于 2017-12-7 12:43:24 | 只看该作者
奇犽 发表于 2017-12-6 10:34
大神你好,公司测试部内部成立开发小组,目前做一些测试方面的一些工具,但是工具的需求不那么连贯,一会做 ...

你们公司投入挺大呀,测试部还有开发小组。我当时也就只能调拨1~2个人做一些工具开发,工作量再多的,只能求助开发团队了。

测试的开发小组,自然要做测试工作所需工具的开发了,但是这个要求测试主管/测试系统工程师要能做好测试工具的规划和设计,要求挺高的。否则,一会做这个,一会做那个,没有连续性。
回复 支持 反对

使用道具 举报

  • TA的每日心情

    2024-5-20 21:29
  • 签到天数: 996 天

    连续签到: 1 天

    [LV.10]测试总司令

    37#
    发表于 2017-12-8 16:07:12 | 只看该作者
    自动化测试想要做到无人值守。
    但是我们测试的软件由于场景过于复杂所以实现起来很困难。
    请问大神之前做过的项目中遇到类似的问题该如何应对?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    38#
    发表于 2017-12-11 09:43:27 | 只看该作者
    本帖最后由 cwb007 于 2017-12-11 11:24 编辑
    applepen 发表于 2017-12-8 16:07
    自动化测试想要做到无人值守。
    但是我们测试的软件由于场景过于复杂所以实现起来很困难。
    请问大神之前做 ...

    自动化测试当然要努力做到无人值守,否则那个人会无聊死。
    场景复杂的,首先要做的是场景分解:①哪些场景是不可打断的;②哪些是依赖某些特别数据的;③哪些是可独立操作,不依赖其他的。对于不可打断的,那就要放到一个用例脚本里。对于依赖别的数据的,那要提前准备好数据,在执行用例前通过某种方法导入就好。独立不依赖的,也是独立用例。

    通过以上措施后,如果还有复杂场景,我建议人工测试,不必追求完全的自动化,我从来不让团队追求完全的自动化。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    前天 09:05
  • 签到天数: 1050 天

    连续签到: 1 天

    [LV.10]测试总司令

    39#
     楼主| 发表于 2017-12-11 15:08:26 | 只看该作者
    本次专家负责凉快领域的测试知识,大家积极参与哦!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2021-8-6 16:14
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    40#
    发表于 2017-12-12 10:30:22 | 只看该作者
    cwb007 发表于 2017-12-7 12:27
    在完备测试情况下,我认可你“成本不会少宇开发被测系统”的观点。其实也就国内不重视测试,要是做完备测 ...

    感谢你的指点,谢谢!
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-23 07:41 , Processed in 0.081285 second(s), 21 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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