Automation 如何配置和维护未知开发人员留下的自动化项目

Automation 如何配置和维护未知开发人员留下的自动化项目,automation,javabeans,code-snippets,xstream,Automation,Javabeans,Code Snippets,Xstream,刚刚有一个新项目要维护和开发自动化测试。我被要求更多地准备场景,而不是编写代码。但不幸的是,为这个项目编写代码的开发人员现在已经不在了,我没有人可以从他那里得到答案。我意识到它现在可能会在这里吸引不那么友好的评论,但最好不要这样问 我有一个jar文件,是我在IDEA中提取并打开的项目。老实说,有太多我不熟悉的代码。嗯,不是代码语法,而是项目中使用的库。也许如果我能从无到有地开始开发一个项目会更好,但是这个系统太大了,所以我甚至不会认真考虑它。但是我希望管理最近这个项目的代码如何工作,以及如何开发

刚刚有一个新项目要维护和开发自动化测试。我被要求更多地准备场景,而不是编写代码。但不幸的是,为这个项目编写代码的开发人员现在已经不在了,我没有人可以从他那里得到答案。我意识到它现在可能会在这里吸引不那么友好的评论,但最好不要这样问

我有一个jar文件,是我在IDEA中提取并打开的项目。老实说,有太多我不熟悉的代码。嗯,不是代码语法,而是项目中使用的库。也许如果我能从无到有地开始开发一个项目会更好,但是这个系统太大了,所以我甚至不会认真考虑它。但是我希望管理最近这个项目的代码如何工作,以及如何开发更多的代码,这样我新创建的场景就可以开始工作,自动化测试就可以成功地准备好了。该系统主要用于测试数据(GPRS)。当然还有数据库、web应用程序和其他一些漂亮的东西,它们专注于所有这些东西的数据测试

我希望社区能帮助我理解如何添加新方法、代码片段和代码字符串,并找出如何正确配置它,以便我能够进一步维护和开发。至少可能有人会给我指出正确的方向,这样我就不会在没有太多代码注释的情况下盲目地在别人的代码中摸索:)我在Java编码、hibernate、x stream等方面的经验不多(这些都在这个项目中),但是经验和真正的理解是分开的,没有太多的理解事物是如何运作的。我也意识到,不会有直接的答案,我明白,但我再次没有人要求在这个项目,希望社区可以帮助我。提前谢谢

因此,没有进一步的尝试,我现在遇到了一个问题

运行自动化是在linux控制台中使用这个字符串(现在不可能使用它,例如在IDEA中,服务器和所有其他东西都在远程服务器上,所以我通过WinSCP putty连接):

./run.sh,其中包含:

/usr/protei/OM/Shared/jdk/bin/java-jar-cute.gprs-1.2.jar

在我运行了这个之后,我得到了很多跟踪日志,其中一部分是这样的:

java.lang.AssertionError:未找到有效答案 位于org.junit.Assert.fail(Assert.java:88) 位于org.junit.Assert.assertTrue(Assert.java:41) 位于org.junit.Assert.assertNotNull(Assert.java:621) 在ru.protei.cute.gprs.steps.SessionSteps.checkCause(SessionSteps.java:156) 在✽.然后检查原因为0(dp_791124513xx_标准GPRS。功能:67)

java.lang.AssertionError:未找到有效答案 位于org.junit.Assert.fail(Assert.java:88) 位于org.junit.Assert.assertTrue(Assert.java:41) 位于org.junit.Assert.assertNotNull(Assert.java:621) 在ru.protei.cute.gprs.steps.SessionSteps.checkCause(SessionSteps.java:156) 在✽.然后检查原因为0(dp_791124513xx_标准GPRS。功能:105)

java.lang.AssertionError:未找到有效答案 位于org.junit.Assert.fail(Assert.java:88) 位于org.junit.Assert.assertTrue(Assert.java:41) 位于org.junit.Assert.assertNotNull(Assert.java:621) 在ru.protei.cute.gprs.steps.SessionSteps.checkCause(SessionSteps.java:156) 在✽.然后检查原因为0(dp_791124513xx_标准GPRS。功能:152)

java.lang.AssertionError:未找到有效答案 位于org.junit.Assert.fail(Assert.java:88) 位于org.junit.Assert.assertTrue(Assert.java:41) 位于org.junit.Assert.assertNotNull(Assert.java:621) 在ru.protei.cute.gprs.steps.SessionSteps.checkCause(SessionSteps.java:156) 在✽.然后检查原因为0(dp_791124513xx_标准GPRS。功能:193)

您可以使用以下代码段实现缺少的步骤:

@给定(“^RG(\d+)为(\d+)K$”)公共无效RG_为K(int arg1,int) arg2)可丢弃的{ //在这里编写代码,将上面的短语转化为具体的行动 抛出新的PendingException();}

@给定(“^FreeGPRS为(\d+K$”)公共无效FreeGPRS为(int arg1) 扔掉的{ //在这里编写代码,将上面的短语转化为具体的行动 抛出新的PendingException();}

时间:10.231有8次故障:

看来它不起作用了

用于测试的场景如下所示:

功能:标准GPRS 1234

场景:Dp测试-不成功使用标准gprs-无资费
Given apn="apn2" and network="22810"

Given unblocked Elisa simcard with MSISDN is 1234 and balance is 10$
And PCRF is off
And QoSP is undefined
And RG7 is 1024K
And RG5 is 0K
And FreeGPRS is 0K
And LimitGPRS is 0$

When send initial request
Then check cause is 16
我假设场景是用某种伪语言编写的,以前的开发人员通过测试设法加载了这种伪语言。我提到有一个jar库,它使用诸如gived、Then、When等注释

您还需要查看哪些其他来源,以使其更加清晰?我不认为我可以分享整个罐子,但可能会有一些类。
如果有人不想免费帮忙,如果条件足够公平的话,我很乐意付钱:)或者至少我会被社区所了解,让我自己更进一步:)

伪语言是小黄瓜,在功能测试中非常常见。您的同事可能正在使用Cucumber编写测试。您可以在这里看到关于小黄瓜语法的文档:伪语言就是小黄瓜,它在功能测试中非常常见。您的同事可能正在使用Cucumber编写测试。您可以在此处查看关于小黄瓜语法的文档: