我正在经历开发基于(Selenium2)Webdriver 的 API 的痛苦,这是我的困境。
我基本上有4个包:
com.example.qa.pageobject
com.exmaple.qa.setup
com.example.qa.test
com.example.qa.utils
在com.example.qa.test
,我有测试类“使用”其他包中的类。
我最终采用了以下测试方法。
@Test
public void testScenario16786() {
Login login = new Login();
login.setUp();
AddSingleDomain asd = new AddSingleDomain();
asd.addSingleDomain();
AddARecord ar = new AddARecord();
ar.AddARecordTest();
}
现在,这似乎是用 Java 开发的一个非常糟糕的例子,这几乎看起来是程序化的。还有其他方法吗?在设计 API 时,是否有一些我需要注意的规则,这些规则将被其他人使用?我确信这在某种程度上是一个经典问题并且之前已经解决了,我只想知道解决这个问题的许多方法是什么,例如:
一种解决方案,可能是使用工厂模式,并基于一个键,实例化一个特定的类,这很好,但有没有更优雅的方法?