2014-05-12 47 views
11

Anlamlı günlüklere sahip olmak ve java'da çalışma zamanında özel rapor oluşturmak için senaryo adı almak istiyorum. Senaryo sınıfı yalnızca getStatus() ve getSourceTagNames() yöntemlerine sahiptir. Senaryo adı almak için bir yol bulamadım.Salatalık javada senaryo adı nasıl alınır?

Birisi bu sorunun çözülmesine yardımcı olabilir mi?

cevap

19

getStatus() ve getSourceTagNames() ek olarak, senaryonun açıklamasını döndüren başka bir yöntem, getName() vardır. Örneğin, bir senaryo için aşağıdaki gibi:

Scenario: verify number of topics shown in the UI 

scenario.getName() döner "verify number of topics shown in the UI"

şöyle ben @Before senaryo başlatmak: Bu yardımcı olur

@Before 
public void before(Scenario scenario) { 
    this.scenario = scenario; 
} 

Umut.

+0

Çok teşekkürler. Kullandığım salatalık versiyonundan bahsetmeyi unuttum. 1.5 sürümü ile deniyordum. 1.6 ile çalıştı ve çalıştı. – user2365105

0
String scenarioName = scenario.getName(); 
String[] arrayScenarioName = scenarioName.split("--"); 
String scenarioName1 = arrayScenarioName[0]; 
String scenarioName2 = arrayScenarioName[1]; 
System.out.println("Scenario Name 1 for this test is -> " + scenarioName1); 
System.out.println("Scenario Name 2 for this test is -> " + scenarioName2); 

String scenarioId = scenario.getId(); 
//Takes the Scenario ID and removes the ; and splits it into 2 strings 
String scenarioId4 = scenarioId; 
String[] parts = scenarioId4.split(";"); 
String part1 = parts[0]; 
String part2 = parts[1]; 
String part11 = part1.replace('-', ' '); 
String part22 = part2.replace('-', ' '); 
System.out.println("Scenario ID for this test is -> part11 " + part11); 
System.out.println("Scenario ID for this test is -> part22 " + part22); 

Eğer @Before ayarı gerçekleştirdikten sonra onları Salatalık Özelliğini ve Senaryo öğeleri almak için bu deneyin.

İlgili konular