Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Попеременный выбор значений в выпадающих списках.


(Lelik) #1

Я начинающий автоматизатор и столкнулась с довольно не простой задачей, как для меня.
Есть комбобоксы. В каждом комбобоксе несколько значений. Задача - создать такой цикл, который переберет все комбинации значений.
Т.е в комбобоксе material - test1 and test2
а в комбобоксе finishing - test3 and test4.

У меня получается найти комбобокс, открыть его и задать нужное определенное значение. Проблема в цикле

Пишу на C#, CodedUI

        /// значения в комбобоксах
        /// 
        string[] materials = new[] { "test1", "test2" };
        string[] finishings = new[] { "test3", "test4" };

====================================================================
HtmlComboBox UIMaterialComboBox this.UIOnSiteQuotationWindoWindow.UIOnSiteQuotationDocument.UIMaterialComboBox;
Mouse.Click(UIMaterialComboBox);

HtmlComboBox UIFinishComboBox = this.UIOnSiteQuotationWindoWindow.UIOnSiteQuotationDocument.UIFinishComboBox;
Mouse.Click(UIFinishingComboBox);

==================================================
а это свойства объектов

    public HtmlComboBox UIMaterialComboBox
    {
        get
        {
            if ((this.mUIMaterialComboBox == null))
            {
                this.mUIMaterialComboBox = new HtmlComboBox(this);
                #region Search Criteria

                this.mUIMaterialComboBox.SearchProperties[HtmlComboBox.PropertyNames.Name] = "Material";
                this.mUIMaterialComboBox.FilterProperties[HtmlComboBox.PropertyNames.ItemCount] = "4";
                this.mUIMaterialComboBox.FilterProperties[HtmlComboBox.PropertyNames.Class] = "el-Material jNiceHidden";
                this.mUIMaterialComboBox.FilterProperties[HtmlComboBox.PropertyNames.ControlDefinition] = "name=\"Material\" class=\"el-Material jNice";
                this.mUIMaterialComboBox.FilterProperties[HtmlComboBox.PropertyNames.TagInstance] = "2";
                this.mUIMaterialComboBox.WindowTitles.Add("OnSite - Quotation");
                #endregion
            }
            return this.mUIMaterialComboBox;
        }
    }

    public HtmlComboBox UIFinishComboBox
    {
        get
        {
            if ((this.mUIFinishComboBox == null))
            {
                this.mUIFinishComboBox = new HtmlComboBox(this);
                #region Search Criteria

                this.mUIFinishComboBox.SearchProperties[HtmlComboBox.PropertyNames.Name] = "Finish";
                this.mUIFinishComboBox.FilterProperties[HtmlComboBox.PropertyNames.ItemCount] = "12";
                this.mUIFinishComboBox.FilterProperties[HtmlComboBox.PropertyNames.Class] = "el-Finish jNiceHidden";
                this.mUIFinishComboBox.FilterProperties[HtmlComboBox.PropertyNames.ControlDefinition] = "name=\"Finish\" class=\"el-Finish jNiceHidd";
                this.mUIFinishComboBox.FilterProperties[HtmlComboBox.PropertyNames.TagInstance] = "3";
                this.mUIFinishComboBox.WindowTitles.Add("OnSite - Quotation");
                #endregion
            }
            return this.mUIFinishComboBox;
        }
    }
    #endregion

    #region Fields
    private HtmlComboBox mUIMaterialComboBox;
    private HtmlComboBox mUIFinishComboBox;
    #endregion
}

Помогите идеей как это сделать компактно, быстро и красиво))