分岐関数 (ifStringIs, ifStartsWith, etc)
文字列に対してこれらの分岐関数を使用することができます。
関数
関数 | 説明 |
---|---|
ifStringIs | 指定した文字列がvalueに一致する場合にコードブロックが実行されます。 |
ifStartsWith | 指定した文字列がvalueで開始する場合にコードブロックが実行されます。 |
ifContains | 指定した文字列がvalueを含む場合にコードブロックが実行されます。 |
ifEndsWith | 指定した文字列がvalueで終了する場合にコードブロックが実行されます。 |
ifMatches | 指定した文字列が正規表現に一致する場合にコードブロックが実行されます。 |
elseIfStringIs | 先行する条件がいずれもマッチしない かつ 指定した文字列がvalueに一致する場合にコードブロックが実行されます。 |
elseIfStartsWith | 先行する条件がいずれもマッチしない かつ 指定した文字列がvalueで開始する場合にコードブロックが実行されます。 |
elseIfContains | 先行する条件がいずれもマッチしない かつ 指定した文字列がvalueを含む場合にコードブロックが実行されます。 |
elseIfEndsWith | 先行する条件がいずれもマッチしない かつ 指定した文字列がvalueで終了する場合にコードブロックが実行されます。 |
elseIfMatches | 先行する条件がいずれもマッチしない かつ 指定した文字列が正規表現にマッチする場合にコードブロックが実行されます。 |
ifElse | 先行する条件がいずれもマッチしない場合にコードブロックが実行されます。 |
IfStringIs1.kt
(kotlin/tutorial/basic/IfStringIs1.kt
)
package tutorial.basic
import org.junit.jupiter.api.Order
import org.junit.jupiter.api.Test
import shirates.core.configuration.Testrun
import shirates.core.driver.branchextension.ifStringIs
import shirates.core.driver.commandextension.describe
import shirates.core.testcode.UITest
@Testrun("testConfig/android/androidSettings/testrun.properties")
class IfStringIs1 : UITest() {
@Test
@Order(10)
fun ifStringIsTest() {
scenario {
case(1) {
action {
"ABC".ifStringIs("ABC") {
describe("in ifStringIs") // executed
}.ifStartsWith("AB") {
describe("in ifStartsWith") // executed
}.ifContains("B") {
describe("in ifContains") // executed
}.ifEndsWith("C") {
describe("in ifEndsWith") // executed
}.ifElse {
describe("in ifElse") // NOT executed
}
}
}
case(2) {
action {
"ABC".ifStringIs("ABC") {
describe("in ifStringIs") // executed
}.elseIfContains("AB") {
describe("in ifStartsWith") // NOT executed
}.elseIfContains("B") {
describe("in ifContains") // NOT executed
}.elseIfContains("C") {
describe("in ifEndsWith") // NOT executed
}.ifElse {
describe("in ifElse") // NOT executed
}
}
}
case(3) {
action {
"ABC".ifStringIs("a") {
describe("in ifStringIs") // NOT executed
}.ifStartsWith("b") {
describe("in ifStartsWith") // NOT executed
}.ifElse {
describe("in ifElse") // executed
}
}
}
}
}
}