CN109634865A - 一种代码转测方法、装置及转测终端 - Google Patents

一种代码转测方法、装置及转测终端 Download PDF

Info

Publication number
CN109634865A
CN109634865A CN201811530794.7A CN201811530794A CN109634865A CN 109634865 A CN109634865 A CN 109634865A CN 201811530794 A CN201811530794 A CN 201811530794A CN 109634865 A CN109634865 A CN 109634865A
Authority
CN
China
Prior art keywords
survey
turn
test
code
product
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201811530794.7A
Other languages
English (en)
Other versions
CN109634865B (zh
Inventor
向文宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201811530794.7A priority Critical patent/CN109634865B/zh
Publication of CN109634865A publication Critical patent/CN109634865A/zh
Application granted granted Critical
Publication of CN109634865B publication Critical patent/CN109634865B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation

Abstract

本发明涉及测试管理,具体公开了一种代码转测方法、装置及转测终端,其中的代码转测方法包括:转测平台接收第一转测账号针对产品开发需求提交的转测代码,并对所述转测代码进行编译;若对所述转测代码编译成功,则使用预设的第一测试用例集中的至少一个冒烟测试用例对所述转测代码进行冒烟测试;若对所述转测代码进行冒烟测试通过,则发送初步验收请求至提出所述产品开发需求的第二转测账号,所述初步验收请求包括运行所述转测代码时的产品运行信息;接收所述第二转测账号基于所述初步验收请求发送的初步验收结果,若所述初步验收结果为通过,则使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试,生成产品测试报告,采用本发明,可以提高测试效率、节省时间。

Description

一种代码转测方法、装置及转测终端
技术领域
本发明涉及软件测试领域,尤其涉及一种代码转测方法、装置及转测终端。
背景技术
开发人员编码实现功能以后,会移交到测试人员这边进行测试,此移交过程即转测。通常,开发人员转测仅仅是将代码提交到测试环境。这样的转测过程可能会存在以下问题:因为开发人员没有进行单元测试、集成测试等,导致转测过来的代码根本运行不了,又或者开发出来的东西与产品经理的要求不相符,仍然是需要打回重做,影响整体测试进度,浪费时间。
发明内容
本发明实施例所要解决的技术问题在于,提供一种代码转测方法、装置及转测终端,可提高测试效率。
为了解决上述技术问题,本发明实施例提供了一种代码转测方法,包括:
转测平台接收第一转测账号针对产品开发需求提交的转测代码,并对所述转测代码进行编译;
若对所述转测代码编译成功,则使用预设的第一测试用例集中的至少一个冒烟测试用例对所述转测代码进行冒烟测试;
若对所述转测代码进行冒烟测试通过,则发送初步验收请求至提出所述产品开发需求的第二转测账号,所述初步验收请求包括运行所述转测代码时的产品运行信息,所述产品运行信息被所述第二转测账号用于判断所述转测代码的运行结果是否符合所述产品开发需求;
接收所述第二转测账号基于所述初步验收请求发送的初步验收结果,若所述初步验收结果为通过,则使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试,生成产品测试报告。
其中,所述产品运行信息包括:
所述转测代码运行过程中产生的与所述产品开发需求对应的测试运行页面信息、测试运行界面信息、测试运行参数或测试输出结果信息。
其中,所述产品运行信息还包括:
链接地址或跳转链接按键,所述链接地址或所述跳转链接按键用于跳转至与所述产品开发需求对应的所述转测代码的测试运行页面或测试运行界面。
其中,所述初步验收请求还包括产品运行权限信息,所述产品运行权限信息被用于向所述第二转测账号提供所述转测代码的测试运行权限。
其中,所述初步验收若未通过,则发送验收未通过通知至所述第一转测账号,所述验收未通过通知包括所述产品运行信息和所述初步验收结果携带的导致所述验收未通过的验收问题描述。
其中,所述冒烟测试若未通过,则发送冒烟测试失败通知至所述第一转测账号,所述冒烟测试失败通知包括测试未通过的冒烟测试用例的标识以及对应冒烟测试用例的测试失败错误信息。
其中,所述第一测试用例集中的各个冒烟测试用例对应所述转测代码的一个预设的基本功能,其中每个冒烟测试用例包括对应基本功能的一个功能指标,所述第二测试用例集中的各个产品功能测试用例对应所述转测代码的一个或多个产品功能,其中每个产品功能测试用例包括对应产品功能的多个功能指标,所述产品功能包含所述基本功能和附加功能。
相应地,本发明实施例还提供了一种用于代码转测的装置,包括:
接收单元,用于接收第一转测账号针对产品开发需求提交的转测代码;
编译单元,用于对所述转测代码进行编译;
冒烟测试单元,用于使用预设的第一测试用例集中的至少一个冒烟测试用例对所述转测代码进行冒烟测试;
发送初步验收请求单元,用于发送初步验收请求至提出所述产品开发需求的第二转测账号;
接收初步验收结果单元,用于接收所述第二转测账号基于所述初步验收请求发送的初步验收结果;
产品功能测试单元,用于使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试;
生成报告单元,用于生成产品测试报告。
本发明实施例还提供了一种转测终端,所述转测终端包括处理器、网络接口和存储器,所述处理器、网络接口和存储器相互连接,其中,所述网络接口受所述处理器的控制用于收发消息,所述存储器用于存储支持终端执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述代码转测方法。
本发明实施例最后还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述代码转测方法。
本实施例中的转测平台通过在对转测代码进行产品功能测试之前,先通过对转测代码进行产品经理的初步验收,从而避免了因产品运行信息与产品开发需求不符而导致来回修改并需要重新进行产品功能测试的情况,并且在初步验收之前先进行基本的编译和冒烟测试,从而可以保证所述转测代码的基本功能正常实现,避免因为基本功能不能实现导致初步验收未通过再通知开发人员进行调整浪费时间的现象,经实际使用该方案发现可以明显提高产品代码的转测效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种代码转测方法的流程图。
图2是本发明实施例提供的一种产品运行信息的示意图。
图3是本发明实施例提供的一种初步验收方法的流程图。
图4是本发明实施例提供的一种代码转测装置的示意框图。
图5是本发明实施例提供的一种转测终端的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在可选实施例中,请参考图1,包括:
S101、转测平台接收第一转测账号针对产品开发需求提交的转测代码;
其中,所述转测代码由持有第一转测账号的开发人员根据持有所述第二转测账号的产品经理提出的产品开发需求编写而成,所述产品经理提出的产品开发需求可以包括更新软件版本、增添新功能、更改页面,所述转测代码经由所述开发人员编写完成后通过第一转测账号提交至所述转测平台,所述第一转测账号在提交所述转测代码时,可以指定其针对的产品开发需求以及该产品开发需求对应的第二转测账号,所述第二转测账号是需要对该转测代码进行初步验收的账号,例如可以是提出该产品开发需求的产品经理所使用的账号,或负责对该转测代码对应的产品开发需求所属产品项目的项目经理所使用的账号等。
在可选实施例中,所述产品开发需求可由持有所述第二转测账号的产品经理提交至所述转测平台,所述转测平台发送所述产品开发需求至所述第一转测账号,所述转测代码经由持有第一转测账号的开发人员查看并了解了来自第二转测账号即对应的产品经理提出的产品开发需求后编写完成,所述转测代码编写完成后被持有所述第一转测账号的开发人员提交至所述转测平台,并指定该转测代码是针对之前通过转测平台发送给第一转测账号的目标产品开发需求开发完成的,转测平台从而可以确定该转测代码针对的是第二转测账号提出的产品开发需求开发完成的。
S102、对所述转测代码进行编译;
其中,所述编译是指将所述转测代码转换成计算机可以识别的二进制语言的过程,所述转测平台的编译器对所述转测代码进行编译,生成为二进制可执行程序。
在可选实施例中,所述产品开发需求还可以包括指定的代码运行环境,例如android环境、ios环境、windows环境,linux环境等,转测平台从而基于所述制定的代码运行环境调用对应的编译器对所述转测代码进行编译。
S103、判断所述编译是否通过;
S104、若对所述转测代码的编译未通过,则发送编译失败通知至所述第一转测账号;
导致所述转测代码编译失败的错误包括语法错误和逻辑错误,所述语法错误产生的原因是由于所述转测代码的编写过程中违背了一些高级语言如C语言、C++、JAVA的语法规则,所述逻辑错误包括变量使用前未被赋值、关系运算符使用错误、未声明变量、调用未定义函数。所述编译失败通知中包括导致编译失败的错误信息,所述错误信息包括编译失败的错误提示和错误在所述转测代码中的位置,将所述编译失败通知发送至所述第一转测账号即发送至提交代码的开发人员。
S105、若对所述转测代码编译通过,则使用预设的第一测试用例集中的至少一个冒烟测试用例对所述转测代码进行冒烟测试;
对所述转测代码进行冒烟测试的目的是测试所述转测代码的基本功能是否正常实现,在初步验收之前先对所述转测代码进行冒烟测试可以提高产品转测效率,避免因为基本功能不能实现导致初步验收未通过再通知开发人员进行来回调整浪费时间的现象。
具体实现中,所述转测代码编译通过后,可以通过调用转测平台预设的第一测试用例集中的至少一个冒烟测试用例来对所述转测代码进行冒烟测试,其中,所述第一测试用例集中的各个冒烟测试用例对应所述转测代码的一个预设的基本功能,其中每个冒烟测试用例包括对应基本功能的一个功能指标。
下面是两个冒烟测试用例的示例:
冒烟测试用例①、创建目标nat(network address translation,网络地址转换)实例。
预期结果(即功能指标):创建成功后通过listnats命令(list of networkaddress translation,网络地址转换列表)来查询新创建的目标nat,并且新创建的目标nat可用。
冒烟测试用例②、删除创建得到的小型nat。
预期结果:删除成功,并且再次通过listnats命令后查询不到目标nat。
其中,上述两个冒烟测试用例示例就分别测试了所述转测代码的创建和删除功能是否正常实现,若用上述冒烟测试用例运行所述转测代码的结果与所述预期结果完全一致则上述冒烟测试测试通过,若使用上述冒烟测试用例运行所述转测代码的结果与所述预期结果不一致,例如冒烟测试用例①中创建成功后通过listnats来查询不到新创建的目标nat,或新创建的目标nat不可用、又例如冒烟测试用例②中删除目标nat后还可以查询的到,则上述冒烟测试未通过。
S106、判断冒烟测试是否通过;
本申请实施例中,转测平台可通过调用预设的第一测试用例集中的多个冒烟测试用例运行所述转测代码,来测试转测代码的多个基本功能是否正常运行,若存在有冒烟测试用例运行所述转测代码失败,则所述冒烟测试未通过。
S107、若所述冒烟测试未通过,发送冒烟测试失败通知至所述第一转测账号;
若所述冒烟测试未通过,则发送冒烟测试失败通知至所述第一转测账号,所述冒烟测试失败通知包括测试未通过的冒烟测试用例的标识以及对应冒烟测试用例的测试失败错误信息。
在可选实施例中,所述转测平台在对所述转测代码进行冒烟测试过程中可以记录导致所述冒烟测试未通过的冒烟测试用例的标识以及对应冒烟测试用例的测试失败错误信息后,所述转测平台可以进一步对所述冒烟测试失败的错误信息进行优先级标注,并添加在所述冒烟测试失败通知内。所述优先级可以分为紧急级别、普通级别以及低级别,例如,紧急级别:基本功能不能正常运行实现等;普通级别:页面跳转速度慢、页面内容显示不完全等;低级别:页面字体过大或过小、符号使用错误等;在所述冒烟测试失败通知内进一步对冒烟测试失败的错误信息标注优先级是为了方便所述开发人员对所述转测代码进行调整时,可以优先解决紧急级别的问题,再解决普通级别的问题,最后解决低级别的问题。
S108、若对所述转测代码的冒烟测试通过,则发送初步验收请求至提出所述产品开发需求的第二转测账号;
所述初步验收可以是由持有所述第二转测账号的产品经理对运行所述转测代码时的产品运行信息进行初步检验,查看所述产品运行信息与所述产品开发需求之间是否存在偏差。
所述初步验收请求包括运行所述转测代码时的产品运行信息,所述产品运行信息被持有所述第二转测账号的产品经理用于判断所述转测代码的运行结果是否符合所述产品开发需求。所述产品运行信息包括所述转测代码运行过程中产生的与所述产品开发需求对应的测试运行页面信息、测试运行界面信息、测试运行参数或测试输出结果信息。
若所述产品开发需求为新增页面,或对页面上的布局、元素等信息进行修改,那么对应的转测代码的初步验收请求中的产品运行信息可以包括所述新增页面或被修改页面的测试运行页面信息,例如,当所述产品开发需求为更改产品A页面上指定区域的字体大小,那么对应的转测代码的初步验收请求中的产品运行信息可以包括所述产品A页面的测试运行页面,可选的还可以对产品A页面的测试运行页面中的指定区域进行圈出、改变显示颜色等突出显示方式,让产品经理更快速的关注到产品开发需求对应的产品页面信息。进一步可选的还可以在所述初步验收请求中携带所述转测代码针对的产品开发需求,使用所述第二转测账号的产品经理在接收到所述初步验收请求后,即可根据所述初步验收请求的上述产品A页面的测试运行页面判断转测代码的运行结果是否符合其提出的产品开发需求,即产品A页面上指定区域的字体大小是否符合其预期。
若所述产品开发需求为新增产品功能界面,或对产品功能界面上的布局、元素等信息进行修改,那么对应的转测代码的初步验收请求中的产品运行信息可以包括所述新增产品功能界面或被修改产品功能界面的测试运行界面信息,例如,当所述产品开发需求为将B界面中两个操作按钮的位置互换,那么对应的转测代码的初步验收请求中的产品运行信息可以包括所述产品B界面的测试运行界面,可选的还可以对产品B界面的测试运行界面中的指定区域进行圈出、改变显示颜色等突出显示方式,让产品经理更快速的关注到产品开发需求对应的产品界面信息。进一步可选的还可以在所述初步验收请求中携带所述转测代码针对的产品开发需求,使用所述第二转测账号的产品经理在接收到所述初步验收请求后,即可根据所述初步验收请求的上述产品B界面的测试运行页面判断转测代码的运行结果是否符合其提出的产品开发需求,即产品B界面中的两个操作按钮的位置是否互换。
若所述产品开发需求还包括所述转测代码的运行参数要求,例如功能响应时长、生成资源大小等,那么对应的转测代码的初步验收请求中的产品运行信息还可以包括所述转测代码运行过程中的测试运行参数。使用所述第二转测账号的产品经理在接收到所述初步验收请求后,即可根据所述初步验收请求中的测试运行参数判断转测代码的运行结果是否符合其提出的产品开发需求中的运行参数要求。
若所述产品开发需求制定了至少一个预期输出结果,那么对应的转测代码的初步验收请求中的产品运行信息还可以包括所述转测代码运行过程产生的测试输出结果信息,例如为目标输出结果界面或目标输出结果页面。使用所述第二转测账号的产品经理在接收到所述初步验收请求后,即可根据所述初步验收请求中的目标输出结果界面或目标输出结果页面判断转测代码的运行结果是否符合其提出的产品开发需求中的预期输出结果。
在另一可选实施例中,所述产品运行信息可以包括链接地址或跳转链接按键,所述链接地址或跳转链接按键用于跳转至与所述产品开发需求对应的所述转测代码的测试运行页面或测试运行界面。
即在该可选实施例中,所述测试运行页面或测试运行界面不直接加载在所述初步验收请求中,而是需要第二转测账号通过初步验收请求中的链接地址或跳转链接按键跳转获取到,例如通过点击链接地址或跳转链接按键访问测试运行页面,或通过点击链接地址或跳转链接按键打开运行所述转测代码的一个冒烟测试用例,从而可以查看到所述转测代码的测试运行界面。
进一步可选的,所述初步验收请求还可以包括产品运行权限信息,所述产品运行权限信息被用于向所述第二转测账号提供所述转测代码的测试运行权限。所述产品运行权限信息可以例如:账号密码、验证码、预设问题等,在接收到如图2(一)中所示所述初步验收请求后,持有第二转测账号的产品经理可以在通过点击链接地址或跳转链接按键跳转至测试运行页面或测试运行界面,在跳转至测试运行页面或测试运行界面之前弹出如图2(二)所示的权限认证页面,产品经理通过输入初步验收请求中携带的所述账号密码进行从而进行权限认证,在认证成功后即获得测试运行页面或测试运行界面的访问或运行权限,成功打开如图2(三)所示的测试运行页面或测试运行界面。
而在另一实施方式中,所述产品运行权限信息可以被包含在所述链接地址中或被包含在所述跳转链接按键的执行代码参数中,持有第二转测账号的产品经理通过点击所述链接地址或跳转链接按键,即可被认为已获得测试运行页面或测试运行界面的访问或运行权限。例如第二转测账号对应的产品经理在手机或其他终端上通过点击包含了产品运行权限信息的链接地址,向指定的目标测试运行页面的页面资源管理服务器提交了携带所述产品运行权限信息的针对目标测试运行页面的页面访问请求,页面资源管理服务器在接收到该页面访问请求时,根据其携带的产品运行权限信息确认该产品经理具有目标测试运行页面的访问权限,从而向用户经理所使用终端返回目标测试运行页面。
S109,接收所述第二转测账号基于所述初步验收请求发送的初步验收结果;
S110、判断所述初步验收结果是否为验收通过,若初步验收结果为未通过,那么所述初步验收结果可以进一步携带导致所述初步验收未通过的验收问题描述。
S111、若所述初步验收未通过,则发送验收失败通知至所述第一转测账号;
若持有所述第二转测账号的产品经理查看运行所述转测代码时的产品运行信息后觉得不符合所述产品开发需求,转测平台会接收到所述第二转测账号发送的告知验收未通过的初步验收结果,所述转测平台可发送验收失败通知至所述第一转测账号,所述验收失败通知包括所述产品运行信息和所述初步验收结果携带的导致所述验收未通过的验收问题描述,让转测代码的开发人员快速了解问题所在并对转测代码作出快速调整。
进而在可选实施例中,所述验收失败通知包括链接地址或跳转链接按键,所述链接地址或跳转链接按键用于跳转至与所述产品开发需求对应的所述转测代码的测试运行页面或测试运行界面。
S112、若所述初步验收通过,则使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试。
在通过初步验收通过后,转测平台调用预设的第二测试用例集中的至少一个产品功能测试用例运行所述转测代码,即对转测代码进行正式的产品功能测试。第二测试用例集中的各个产品功能测试用例对应所述转测代码的一个或多个产品功能,其中每个产品功能测试用例包括对应产品功能的多个功能指标,所述产品功能包含所述基本功能和附加功能,即本申请实施例中的第二测试用例集中的产品功能测试用例相较于第一测试用例集中的冒烟测试用例针对的测试指标和预期结果要更为丰富。
下面是两个产品功能测试用例的示例:
产品功能测试用例①、提前准备好所需资源:创建vpc1(virtual privatecloud1,虚拟私有云1),并为vpc1创建DMZ(Demilitarized zone,隔离区)的network(网络)和subnet(子网)。
a、进入创建NAT(Net Address Translation,网络地址转换)网关页面。
预期结果为:创建NAT网关页面成功,且页面标题合理。
b、规范选择、填写所有参数,包括:运营商、VPC、规格、计费方式、描述等。
预期结果为:创建页面的“配置清单”中,各个参数值与所选/所填值保持一致。
c、点击创建按钮。
预期结果为:进入订单确认页面,且订单确认页面以下信息正确无误。
(1)产品名称;
(2)配置信息;
(3)单价---注意单位是Mbps/小时;
(4)数量;
(5)付费方式;
(6)购买时长;
(7)费用---注意单位是Mbps/小时。
d.点击确认开通按钮。
预期结果为:
(1)进入支付结果页面,且支付结果为支付成功;
(2)生成一条新订单,且订单信息准确无误;
(3)生成一条新收支明细,因NAT为后付费产品,所以创建时扣费金额为0,在portal(门户)页面不展示,只存于数据库中;
其中,页面的数据要提交到portal服务器,所以这种页面也叫portal页面。
(4)生成一条新操作审计,且审计中各信息准确无误;
(5)租户主账号手机收到NAT创建成功的提示。
e、查看新生成NAT是否与购买时配置保持一致。
预期结果为:
(1)状态:“创建中”→“可用”(耗时比较长的话,可以考虑在页面上给出温馨提示,以防用户在等待过程中焦虑)。
(2)NAT详情页面,各值准确无误。
f、查看创建NAT的的portal日志信息。
预期结果为:portal的日志正常,没有任务错误信息。
产品功能测试用例②、创建vpc1并为vpc1创建DMZ的network和subnet。
a、在vpc1下建NAT1(NAT创建成功后默认是“运行中”状态)。
预期结果为:创建成功。
b、删除NAT1。
预期结果为:
(1)提示合理。
(2)删除成功,状态改为已删除不再在页面展示(最快捷校验底层NAT相关资源是否已经释放:删除vpc--若有互联ip(internet protocol,网络互连协议)等资源没有释放,会导致删网络域失败)。
(3)生成一条新操作审计,且审计中各信息准确无误。
(4)生成一条收支明细,且收支明细列表中各个值准确无误(扣费金额为最后一次扣费时刻到当前时刻产生的费用)、订单详情中各个值准确无误。
(5)操作者手机收到NAT删除成功的提示信息。
c、查看删除NAT1的portal日志信息。
预期结果为:portal的日志正常,没有任务错误信息。
若使用上述两个产品功能测试用例运行转测代码出现的结果与各产品功能测试用例指定的预期结果不同,则说明所述产品功能测试用例运行所述转测代码出现问题。
在上述两个产品功能测试用例中,可以很明显的看出相比冒烟测试用例同样是测试创建和删除功能,产品功能测试用例测试针对的测试指标和预期结果要更为丰富,例如产品功能测试用例①测试的产品功能还进一步包括创建NAT网关页面、开通支付等功能,相比各个冒烟测试用例对应所述转测代码的一个预设的基本功能,所述产品功能测试用例的测试功能更多也更全面,在初步验收之前先对所述转测代码进行冒烟测试可以保证所述转测代码的基本功能正常实现,避免因为基本功能不能实现导致初步验收未通过再通知开发人员进行调整浪费时间的现象,初步验收通过保证所述转测代码符合所述产品开发需求之后方对所述转测代码进行更全面的产品功能测试,从而避免了经过产品功能测试后才发现与产品开发需求不符而需要重新修改并重新测试的情况。
S113、生成产品测试报告;
用产品功能测试用例运行所述转测代码后,所述转测平台可以生成产品测试报告,所述产品测试报告包括导致所述产品功能测试失败的错误信息和产品功能测试未通过的产品功能测试用例的标识,所述产品测试报告还可以包括测试时间、测试版本。
本实施例中的转测平台通过在对转测代码进行产品功能测试之前,先通过对转测代码进行产品经理的初步验收,从而避免了因产品运行信息与产品开发需求不符而导致来回修改并需要重新进行产品功能测试的情况,并且在初步验收之前先进行基本的编译和冒烟测试,从而可以保证所述转测代码的基本功能正常实现,避免因为基本功能不能实现导致初步验收未通过再通知开发人员进行调整浪费时间的现象,经实际使用该方案发现可以明显提高产品代码的转测效率。
在可选实施例中,请参考图3,所述冒烟测试通过之后包括:
S301、发送初步验收请求至多个第二转测账号。即在本实施例中需要对转测代码进行初步验收的第二转测账号包括多个。
在一种实施方式中,所述转测代码针对的产品开发需求由多个产品经理共同讨论得出,那么后续也需要所述多个产品经理进行初步验收。在该实施方式的一种情况下,所述转测平台接收来自提出所述产品开发需求的其中一个产品经理对应的第二转测账号提交的所述产品开发需求,并指定了所述产品开发需求对应的多个产品经理的各自的第二转测账号,所述转测平台在针对该产品开发需求提交的转测代码经过编译和冒烟测试后,可将该转测代码的初步验收请求发送至所述产品开发需求对应的多个第二转测账号。
在上述实施方式下的另一种情况,第一转测账号在向转测平台提交所述转测代码时,也可以指定该转测代码针对的产品开发需求并携带提出该产品开发需求的多个第二转测账号,从而所述转测平台在针对该产品开发需求提交的转测代码经过编译和冒烟测试后,可将该转测代码的初步验收请求发送至所述产品开发需求对应的多个第二转测账号。
当另一实施方式中,所述转测代码是根据多个产品经理提出的多个产品开发需求编写完成时,因此需要所述多个产品经理分别对自己提出的产品开发需求进行初步验收查看是否符合自己所提出的产品开发需求。在该实施方式下的一种情况中,第一转测账号在向转测平台提交所述转测代码时,可以指定该转测代码针对的多个产品开发需求并携带各个产品开发需求对应的第二转测账号,从而所述转测平台在针对该产品开发需求提交的转测代码经过编译和冒烟测试后,可将该转测代码的初步验收请求发送至所述产品开发需求对应的多个第二转测账号。进一步可选的,在该实施方式下的初步验收请求可以只携带针对目标第二转测账号提出的这部分产品开发需求对应的产品运行信息,即发送至各个第二转测账号的初步验收请求中携带的产品运行信息是相互不同的,只需要接到初步验收请求的产品经理对自己提出的这部分产品开发需求进行初步验收确认即可,比如,针对同一产品,产品经理a提出的产品开发需求为更改A界面颜色,则在向a发送的初步验收请求中只需携带A界面的测试运行界面信息,另一产品经理b提出的产品开发需求为更改B界面的按键位置,则在向b发送的初步验收请求中只需携带B页面的测试运行界面信息。
其中,所述初步验收请求的内容与前文实施例中S108介绍的类似,本实施例中不再赘述。
S302、接收所述多个转测账号基于所述初步验收请求发送的初步验收结果;
接收到初步验收请求的产品经理们进行初步验收后,发送所述初步验收结果至所述转测平台,所述转测平台接收来自所述多个转测账号基于所述初步验收请求发送的初步验收结果,所述初步验收结果可以包括针对的产品开发需求以及导致所述验收未通过的验收问题描述。
S303、判断所述初步验收结果中是否均初步验收通过;
S304、若所述初步验收结果中出现初步验收未通过,则发送初步验收失败通知至所述第一转测账号;
所述初步验收失败通知可以包括所述产品运行信息和所述初步验收结果携带的导致所述验收未通过的验收问题描述,可以帮助持有所述第一转测账号的开发人员更好的对代码进行调整。
S305、若所述初步验收结果中均为初步验收通过,则使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试。
本实施例中的转测代码针对的产品开发需求对应有多个第二转测账号,那么转测平台需要向这些多个第二转测账号分别发送初步验收请求,并且在确保每个初步验收都通过后,才进行正式的产品测试,从而更大程度上避免了因产品运行信息与产品开发需求不符而导致来回修改并需要重新进行产品功能测试的情况,进一步提高产品代码的转测效率。
本发明实施例还提供了一种代码转测装置,所述装置包括用于执行前述图1或图3所述代码转测方法的各个功能单元。具体的,请参考图4,是本发明实施例提供的代码转测装置的示意框图,本实施例的代码转测装置包括接收单元401、编译单元402、冒烟测试单元403、发送初步验收请求通知单元404、接收初步验收结果单元405和产品功能测试单元和生成报告单元406。
接收单元401,用于接收第一转测账号针对产品开发需求提交的转测代码,持有第一转测账号的开发人员根据持有所述第二转测账号的产品经理提出的产品开发需求进行代码的编写,所述产品经理提出的产品开发需求可以包括更新软件版本、增添新功能、更改页面等,所述开发人员完成代码的编写后将所述转测代码提交至所述接收单元401。
编译单元402,用于对所述转测代码进行编译,所述编译是指将所述转测代码转换成计算机可以识别的二进制语言的过程,所述编译单元402对所述转测代码进行编译,生成为二进制可执行程序。
冒烟测试单元403,用于使用预设的第一测试用例集中的至少一个冒烟测试用例对所述转测代码进行冒烟测试,对所述转测代码进行冒烟测试的目的是测试所述转测代码的基本功能是否正常实现,所述转测代码编译通过进入冒烟测试后,可以通过转测平台的第一测试用例集的接口来调用其中的至少一个冒烟测试用例来对所述转测代码进行冒烟测试,其中,所述第一测试用例集中的各个冒烟测试用例对应所述转测代码的一个预设的基本功能,每个冒烟测试用例包括对应基本功能的一个功能指标。
发送初步验收请求单元404,用于发送初步验收请求至提出所述产品开发需求的第二转测账号,所述初步验收就是对验收产品进行初步检验,查看验收产品与所述产品开发需求是否存在偏差。所述初步验收请求包括运行所述转测代码时的产品运行信息,所述产品运行信息被所述第二转测账号用于判断所述转测代码的运行结果是否符合所述产品开发需求。所述初步验收请求包括链接地址或跳转链接按键,所述链接地址或所述跳转链接按键用于跳转至与所述产品开发需求对应的所述转测代码的测试运行页面、测试运行界面,所述初步验收请求还包括产品运行权限信息,所述产品运行权限信息被用于向所述第二转测账号提供所述转测代码的测试运行权限。
接收初步验收结果单元405,用于接收所述第二转测账号基于所述初步验收请求发送的初步验收结果。
产品功能测试单元406,用于使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试,所述第二测试用例集中的各个产品功能测试用例对应所述转测代码的一个或多个产品功能,其中每个产品功能测试用例包括对应产品功能的多个功能指标,所述产品功能包含所述基本功能和附加功能,所述产品功能测试用例可以为很多个,可以测试各个功能的实现情况。
生成报告单元407,用于生成产品测试报告,所述产品测试报告包括导致所述产品功能测试失败的错误信息和产品功能测试未通过的产品功能测试用例的标识,所述产品测试报告还可以包括测试时间、测试版本。
在可选实施例中,所述接收单元401接收来自第一转测账号针对产品开发需求提交的转测代码,所述编译单元402对所述来自接收单元401的转测代码进行编译,若所述编译失败,则向所述第一转测账号发送编译失败通知,所述编译失败通知中包括导致编译失败的错误信息,所述错误信息包括编译失败的错误提示和错误在所述转测代码中的位置。
若所述编译成功,则所述冒烟测试单元403调用来自第一测试用例集的至少一个冒烟测试用例对所述编译成功后的转测代码进行冒烟测试,若所述冒烟测试失败,则向所述第一转测账号发送冒烟测试失败通知,所述冒烟测试失败通知包括测试未通过的冒烟测试用例的标识以及对应冒烟测试用例的测试失败错误信息。
若所述冒烟测试成功,则所述发送初步验收请求单元404发送初步验收请求至所述第二转测账号,所述初步验收请求包括运行所述转测代码时的产品运行信息,所述产品运行信息被所述第二转测账号用于判断所述转测代码的运行结果是否符合所述产品开发需求。
在可选实施例中,所述初步验收请求包括链接地址或跳转链接按键,所述链接地址或所述跳转链接按键用于跳转至与所述产品开发需求对应的所述转测代码的测试运行页面或测试运行界面。
进一步可选的,所述初步验收请求还可以包括产品运行权限信息,所述产品运行权限信息被用于向所述第二转测账号提供所述转测代码的测试运行权限。
所述接收初步验收结果单元405接收所述第二转测账号基于所述初步验收请求发送的初步验收结果,若所述初步验收结果为验收未通过,则向所述第一转测账号发送所述验收失败通知,所述验收失败通知包括所述产品运行信息和所述初步验收结果携带的导致所述验收未通过的验收问题描述。
若所述验收结果为验收通过,所述产品功能测试单元406调用来自所述第二测试用例集的至少一个产品功能测试用例对所述验收通过的转测代码进行测试,所述生成报告单元407生成产品测试报告。
需要说明的是,本发明实施例所描述的代码转测装置的各功能单元的功能可根据图1所述的方法实施例中的方法具体实现,其具体实现过程可以参照图1的方法实施例的相关描述,此处不再赘述。
请参见图5,图5是本发明实施例提供的一种终端的示意性框图,如图4所示,该终端包括,处理器501、存储器502和网络接口503。上述处理器501、存储器502和网络接口503可通过总线或其他方式连接,在本发明实施例所示图5中以通过总线连接为例。其中,网络接口503受所述处理器的控制用于收发消息,存储器502用于存储计算机程序,所述计算机程序包括程序指令,处理器501用于执行存储器502存储的程序指令。
所述处理器,用于对所述第一转测账号提交的转测代码进行编译,检测所述编译是否成功,若所述编译成功,则所述转测代码进入冒烟测试阶段,否则发送编译失败的通知至所述第一转测账号。
所述处理器还用于调用第一测试用例集库中的至少一个冒烟测试用例运行所述转测代码,检测所述冒烟测试是否成功,若所述冒烟测试成功,则发送初步验收请求至所述第二转测账号,若所述冒烟测试失败,则发送冒烟测试失败的通知至所述第一转测账号。
所述处理器还用于接收来自所述第二转测账号基于初步验收请求的初步验收结果,若所述初步验收通过,则用所述产品功能测试用例来运行所述转测代码,若所述初步验收未通过,则发送初步验收未通过的通知至所述第一转测账号。
所述处理器还用于生成测试报告。
所述存储器用于存储所述冒烟测试用例和所述功能测试用例。
应当理解,在本发明实施例中,所述处理器可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括非易失性随机存取存储器。例如,存储器还可以存储设备类型的信息。
在本发明的另一实施例中提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行前述任一实施例所述的方法。
所述计算机可读存储介质可以是前述任一实施例所述的终端的内部存储单元,例如终端的硬盘或内存。所述计算机可读存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述终端的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种代码转测方法,其特征在于,包括:
转测平台接收第一转测账号针对产品开发需求提交的转测代码,并对所述转测代码进行编译;
若对所述转测代码编译成功,则使用预设的第一测试用例集中的至少一个冒烟测试用例对所述转测代码进行冒烟测试;
若对所述转测代码进行冒烟测试通过,则发送初步验收请求至提出所述产品开发需求的第二转测账号,所述初步验收请求包括运行所述转测代码时的产品运行信息,所述产品运行信息被所述第二转测账号用于判断所述转测代码的运行结果是否符合所述产品开发需求;
接收所述第二转测账号基于所述初步验收请求发送的初步验收结果,若所述初步验收结果为通过,则使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试,生成产品测试报告。
2.如权利要求1所述的代码转测方法,其特征在于,所述产品运行信息包括:
所述转测代码运行过程中产生的与所述产品开发需求对应的测试运行页面信息、测试运行界面信息、测试运行参数或测试输出结果信息。
3.如权利要求1所述的代码转测方法,其特征在于,所述产品运行信息包括:
链接地址或跳转链接按键,所述链接地址或所述跳转链接按键用于跳转至与所述产品开发需求对应的所述转测代码的测试运行页面或测试运行界面。
4.如权利要求3所述的代码转测方法,其特征在于,所述初步验收请求还包括产品运行权限信息,所述产品运行权限信息被用于向所述第二转测账号提供所述转测代码的测试运行权限。
5.如权利要求1所述的代码转测方法,其特征在于,所述初步验收若未通过,则发送验收未通过通知至所述第一转测账号,所述验收未通过通知包括所述产品运行信息和所述初步验收结果携带的导致所述验收未通过的验收问题描述。
6.如权利要求1所述的代码转测方法,其特征在于,所述冒烟测试若未通过,则发送冒烟测试失败通知至所述第一转测账号,所述冒烟测试失败通知包括测试未通过的冒烟测试用例的标识以及对应冒烟测试用例的测试失败错误信息。
7.如权利要求1所述代码转测方法,其特征在于,所述第一测试用例集中的各个冒烟测试用例对应所述转测代码的一个预设的基本功能,其中每个冒烟测试用例包括对应基本功能的一个功能指标,所述第二测试用例集中的各个产品功能测试用例对应所述转测代码的一个或多个产品功能,其中每个产品功能测试用例包括对应产品功能的多个功能指标,所述产品功能包含所述基本功能和附加功能。
8.一种代码转测装置,其特征在于,包括:
接收单元,用于接收第一转测账号针对产品开发需求提交的转测代码;
编译单元,用于对所述转测代码进行编译;
冒烟测试单元,用于使用预设的第一测试用例集中的至少一个冒烟测试用例对所述转测代码进行冒烟测试;
发送初步验收请求单元,用于发送初步验收请求至提出所述产品开发需求的第二转测账号;
接收初步验收结果单元,用于接收所述第二转测账号基于所述初步验收请求发送的初步验收结果;
产品功能测试单元,用于使用预设的第二测试用例集中的至少一个产品功能测试用例对所述转测代码进行产品测试;
生成报告单元,用于生成产品测试报告。
9.一种转测终端,其特征在于,包括处理器和存储器,所述处理器和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
CN201811530794.7A 2018-12-13 2018-12-13 一种代码转测方法、装置及转测终端 Active CN109634865B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811530794.7A CN109634865B (zh) 2018-12-13 2018-12-13 一种代码转测方法、装置及转测终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811530794.7A CN109634865B (zh) 2018-12-13 2018-12-13 一种代码转测方法、装置及转测终端

Publications (2)

Publication Number Publication Date
CN109634865A true CN109634865A (zh) 2019-04-16
CN109634865B CN109634865B (zh) 2024-03-22

Family

ID=66073784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811530794.7A Active CN109634865B (zh) 2018-12-13 2018-12-13 一种代码转测方法、装置及转测终端

Country Status (1)

Country Link
CN (1) CN109634865B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112035368A (zh) * 2020-09-03 2020-12-04 携程旅游信息技术(上海)有限公司 自动化软件测试方法、装置、电子设备、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880546A (zh) * 2012-09-03 2013-01-16 上海方正数字出版技术有限公司 一种基于xml数据库的软件集成测试方法及系统
CN106484606A (zh) * 2015-09-01 2017-03-08 阿里巴巴集团控股有限公司 一种代码提交方法和设备
CN106649094A (zh) * 2016-10-30 2017-05-10 合肥微匠信息科技有限公司 一种基于EventViewer开发过程中的测试方法
CN107729255A (zh) * 2017-11-10 2018-02-23 北京奇虎科技有限公司 软件测试方法、装置及系统
CN107807881A (zh) * 2017-09-28 2018-03-16 北京新能源汽车股份有限公司 代码覆盖率的测试方法、装置和计算机设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880546A (zh) * 2012-09-03 2013-01-16 上海方正数字出版技术有限公司 一种基于xml数据库的软件集成测试方法及系统
CN106484606A (zh) * 2015-09-01 2017-03-08 阿里巴巴集团控股有限公司 一种代码提交方法和设备
CN106649094A (zh) * 2016-10-30 2017-05-10 合肥微匠信息科技有限公司 一种基于EventViewer开发过程中的测试方法
CN107807881A (zh) * 2017-09-28 2018-03-16 北京新能源汽车股份有限公司 代码覆盖率的测试方法、装置和计算机设备
CN107729255A (zh) * 2017-11-10 2018-02-23 北京奇虎科技有限公司 软件测试方法、装置及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112035368A (zh) * 2020-09-03 2020-12-04 携程旅游信息技术(上海)有限公司 自动化软件测试方法、装置、电子设备、存储介质

Also Published As

Publication number Publication date
CN109634865B (zh) 2024-03-22

Similar Documents

Publication Publication Date Title
CN110347395A (zh) 基于云计算平台的软件发布方法及装置
Grieskamp et al. Model‐based quality assurance of protocol documentation: tools and methodology
CN111078554B (zh) 一种小程序调试方法、装置、设备及存储介质
US7810072B2 (en) Exception thrower
US8819638B2 (en) Application protoyping suite
CN105426165B (zh) 一种脚本工具的处理方法及装置
CN108614716A (zh) 用于指定基于云的部署的配置的高级语言
CN104298604A (zh) 云服务健壮性测试系统及测试方法
US20130183948A1 (en) Application Store System and Development Method Using the Application Store System
Quinton et al. SALOON: a platform for selecting and configuring cloud environments
CN109783118A (zh) Fpga云主机开发方法和系统
CN109213681A (zh) 测试系统、方法、设备及可读存储介质
Miller et al. A case study in model‐based testing of specifications and implementations
Pistore et al. Process-level composition of executable web services:” on-the-fly” versus” once-for-all” composition
CN109461045A (zh) 订单支付方法、系统、计算机设备和存储介质
CN110517020A (zh) 基于区块链网络的项目开发方法及区块链网络的节点
CN110221845A (zh) 应用部署方法、装置、设备和介质
CN105704178A (zh) 任务平台的接入方法及装置
CN110177378A (zh) 一种自动化测试方法及相关设备
CN109347866A (zh) 登录方法、装置、系统和计算机可读存储介质
CN110750243A (zh) 项目代码开发方法和系统
CN111444090B (zh) 区块链中的合约测试方法、装置、电子设备及存储介质
CN109634865A (zh) 一种代码转测方法、装置及转测终端
CN109242561A (zh) 抽奖模型构建方法、抽奖活动管理方法、装置和计算设备
Lübke Unit testing BPEL compositions

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant