私の web.app は基本的に、ワークアウトを 1 日に追加できるカレンダー インターフェイスです。ヘルパー (クラス?) があり、すべての関数を一度だけ配置して、他の場所で呼び出すことができます。申し訳ありませんが、私はプログラミングを始めてから長い時間が経ち、すべての正しい単語を知りません。javascript で書かれたセレン ide テストを C# に翻訳しています。
以下のヘルパーでは、実行を 1 日に追加し、変数に割り当てます。
public static Int64 AddRunToday(IWebDriver driver)
{
//hovers over today so day context menu appears, click Add
Common.Helpers.WaitForElement(By.CssSelector(".day.today.ui-droppable"), driver);
Common.Helpers.MouseHover(By.CssSelector(".day.today.ui-droppable"), driver);
driver.FindElement(By.CssSelector(".day.today .daySettings")).Click();
Common.Helpers.WaitForElement(By.Id("calendarDaySettingsAddLabel"), driver);
driver.FindElement(By.Id("calendarDaySettingsAddLabel")).Click();
// selects a Run
Common.Helpers.WaitForElement(By.CssSelector("button[data-workoutid=\"3\"]"), driver);
driver.FindElement(By.CssSelector("button[data-workoutid=\"3\"]")).Click();
Common.Helpers.WaitForElement(By.Id("workoutTitleField"), driver);
driver.FindElement(By.Id("workoutTitleField")).Click();
driver.FindElement(By.Id("workoutTitleField")).Clear();
driver.FindElement(By.Id("workoutTitleField")).SendKeys("Today's Run");
Common.Helpers.WaitForElement(By.Id("saveClose"), driver);
driver.FindElement(By.Id("saveClose")).Click();
Common.Helpers.WaitForElement(By.CssSelector(".day.today .workout.Run[data-workoutid]"), driver);
Int64 runTodayId = (Int64)Common.Helpers.EvalScript("window.$('.day.today .workout.Run').data('workoutid')", driver);
return runTodayId;
}
それから私のテストで私は書きます
//adds workout
Int64 runTodayId = Common.Helpers.AddRunToday(driver);
1 日にワークアウトを無制限に追加するにはどうすればよいですか? だから、本質的に私は次のようなものを書きたい
//adds workout
Int64 runTodayId1 = Common.Helpers.AddRunToday(driver);
Int64 runTodayId2 = Common.Helpers.AddRunToday(driver);
Int64 runTodayId3 = Common.Helpers.AddRunToday(driver);
これで大丈夫になるように、メイン関数に何を入れますか?動的に名前が付けられた変数か何かのように、多分?またはどのように?
ご協力ありがとうございました!