0

私の 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);

これで大丈夫になるように、メイン関数に何を入れますか?動的に名前が付けられた変数か何かのように、多分?またはどのように?

ご協力ありがとうございました!

4

1 に答える 1

0

私があなたを正しく理解していれば。Int64 のリストを作成したい。

しかし、私が理解していないのは、複数のワークアウトを生成する要因は何かということです. 個別のドライバーはありますか?

毎回異なるワークアウトを取得するには、ある種の反復 (ドライバー?) を行う必要があります。トレーニングが終わったら何をしたいですか?

List<Int64> workouts = new List<Int64>();

foreach(var something in Collection)
{
   workouts.Add(Common.Helpers.AddRunToday(something));
}
于 2013-03-28T17:22:07.720 に答える