2016-08-02 55 views
0

我正在从事硒自动化。 我的团队使用xml文件进行测试数据。 xml文件中的测试数据将作为bean和属性。有没有办法在xml文件中获取Bean ID

每个bean将是一个测试用例的数据。现在

,我们正在与类似下面的每个bean创建每个@Test方法:

ApplicationContext ctx = new ClassPathXmlApplicationContext("/PostPaidRegistration.xml"); 
     RegistrationBean user = (RegistrationBean)ctx.getBean("postpaidTC1"); 

现在的测试用例,我们将使用“postpaidTC1” bean的数据。

另一个测试用例我们写成

ApplicationContext ctx = new ClassPathXmlApplicationContext("/PostPaidRegistration.xml"); 
     RegistrationBean user = (RegistrationBean)ctx.getBean("postpaidTC2"); 

我想知道另一@Test方法,而不是在XML豆类创造了许多@Test方法,任何方式来运行所有的豆类(测试数据)在带有单个@Test方法的xml中,通过获取BeanID作为循环。

我的XML是象下面这样:

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:mongo="http://www.springframework.org/schema/data/mongo" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans.xsd 
    http://www.springframework.org/schema/data/mongo 
    http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd 
    http://www.springframework.org/schema/data/repository 
    http://www.springframework.org/schema/data/repository/spring-repository-1.0.xsd 
    http://www.springframework.org/schema/data/jpa 
    http://www.springframework.org/schema/data/jpa/spring-jpa-1.0.xsd"> 
<bean id="postpaidTC1" class="com.tecnotree.CLM.beans.RegistrationBean"> 

    <property name="service" value="GSM SERVICE" /> 
    <property name="subService" value="Voice"/> 
    <property name="technology" value="gsm"/> 
    <property name="plan" value="POSTPAID ADV REN"/> 
    <property name="mCategory" value="POSTPAID NORMAL 2"/> 
    <property name="mSelection" value="Automatic"/> 
    <property name="firstName" value="Sarada"/> 
    <property name="middleName" value="M" /> 
    <property name="lastName" value="Akurathi"/> 
    <property name ="dob" value="19/02/1989"/> 
    <property name ="prefLang" value="ENGLISH"/> 
    <property name ="prefMedium" value="Email"/> 
    <property name ="prefMediumValue" value="[email protected]"/> 
    <property name ="streetName" value="Gandhi Nagar"/> 
    <property name ="buildingNumber" value="12"/> 
    <property name ="docPurpose" value="Proof Identity"/> 
    <property name ="docType" value="PANCARD"/> 
    <property name ="docId" value="VETY3D343"/> 
    <property name ="docPlaceOfIssue" value="Chennai"/> 
    <property name ="billCycle" value="5th TO 4th MONTHLY BILL CYCLE"/> 
</bean> 
<bean id="postpaidTC2" class="com.tecnotree.CLM.beans.RegistrationBean"> 

    <property name="firstName" value="Suneetha"/> 
    <property name="lastName" value="ss"/> 
    <property name ="dob" value="19/02/1989"/> 
    <property name ="prefLang" value="ENGLISH"/> 
    <property name ="prefMedium" value="Email"/> 
    <property name ="prefMediumValue" value="[email protected]"/> 
    <property name="plan" value="POSTPAID ADV REN"/> 

</bean> 

</beans> 
+0

迭代什么是硒在这里的作用??? –

+0

在Selenium脚本中,我们使用xml和beans作为测试数据提供者。 –

+0

但是这不是硒问题,所以从这个问题中删除硒标签 –

回答

1

也许你可以做

Map<String, RegistrationBean> beanMap = ctx.getBeansOfType(RegistrationBean.class)

然后通过beanMap

+0

谢谢你,它正在工作 –

相关问题