public PassoDoTeste(TestCase parent) { //if (parent.SistemaPai == null) //{ // MessageBox.Show("Passo do Teste: parent.SistemaPai == null"); //} //else //{ // MessageBox.Show("sistema " + parent.SistemaPai.Nome); //} telasPossiveis = Tela_DAO.getAllTelas(parent.SistemaPai); //telasPossiveis = new ObservableCollection<Tela>(parent.SistemaPai.telas); resultado = new AcaoDynResult(); this.TestCaseParent = parent; List <Screen> telas = telasPossiveis.ToList(); telas.OrderBy(tela => tela.Nome); telasPossiveis = new ObservableCollection <Screen>(telas); }
public AcaoDynResult Executar(string Parametro) { AcaoDynResult Result = new AcaoDynResult(); //MessageBox.Show("COdeScript:" + CodeScript); StringBuilder sb = new StringBuilder(); //----------------- // Create the class as usual sb.AppendLine("using System;"); sb.AppendLine("using System.Windows.Forms;"); sb.AppendLine("using System.Collections;"); sb.AppendLine("using System.Collections.Generic;"); sb.AppendLine("using System.Text.RegularExpressions;"); sb.AppendLine("using System.Collections.ObjectModel;"); sb.AppendLine("using TopDown_QA_FrameWork;"); sb.AppendLine("using System.Runtime.InteropServices;"); sb.AppendLine("using OpenQA.Selenium;"); sb.AppendLine("using OpenQA.Selenium.Support.PageObjects;"); sb.AppendLine("using OpenQA.Selenium.Support.UI;"); sb.AppendLine("using System.ComponentModel;"); sb.AppendLine(); sb.AppendLine("namespace TestFrameWork"); sb.AppendLine("{"); sb.AppendLine(" public class ActionToRun"); sb.AppendLine(" {"); // My pre-defined class named FilterCountries that receive the sourceListBox sb.AppendLine(" public void RunAction(string Parametro, out bool? Passou, out string Retorno)"); sb.AppendLine(" {"); sb.AppendLine("Browser.Driver.SwitchTo().DefaultContent();"); // sb.AppendLine("Passou = null;"); sb.AppendLine("Retorno = \"\";"); sb.AppendLine(CodeScript); sb.AppendLine(" }"); sb.AppendLine(" public void IR_PARA_CONTEUDO_PRINCIPAL() {Browser.Driver.SwitchTo().DefaultContent();}"); sb.AppendLine(" public void MUDAR_PARA_FRAME(string frameContainer) {Browser.Wait.Until(ExpectedConditions.FrameToBeAvailableAndSwitchToIt(frameContainer));}"); //sb.AppendLine(" public void IR_PARA_CONTEUDO_PRINCIPAL() {Browser.Driver.SwitchTo().DefaultContent();}"); //sb.AppendLine(" public void IR_PARA_CONTEUDO_PRINCIPAL() {Browser.Driver.SwitchTo().DefaultContent();}"); //sb.AppendLine(" public void IR_PARA_CONTEUDO_PRINCIPAL() {Browser.Driver.SwitchTo().DefaultContent();}"); sb.AppendLine(" }"); sb.AppendLine("}"); //----------------- // The finished code String classCode = sb.ToString(); //----------------- // Dont need any extra assemblies Object[] requiredAssemblies = new Object[] { "TopDown_QA_FrameWork.dll" }; dynamic classRef; try { //txtErrors.Clear(); //------------ // Pass the class code, the namespace of the class and the list of extra assemblies needed //--classRef = CodeHelper.HelperFunction(classCode, "TestFrameWork.ActionToRun", requiredAssemblies); //------------------- // If the compilation process returned an error, then show to the user all errors if (classRef is CompilerErrorCollection) { StringBuilder sberror = new StringBuilder(); foreach (CompilerError error in (CompilerErrorCollection)classRef) { sberror.AppendLine(string.Format("{0}:{1} {2} {3}", error.Line, error.Column, error.ErrorNumber, error.ErrorText)); } //txtErrors.Text = sberror.ToString(); MessageBox.Show("ERRO DE CÓDIGO: " + sberror.ToString()); Result.erro = sberror.ToString(); return(Result); } } catch (Exception ex) { // If something very bad happened then throw it //MessageBox.Show(ex.Message); Result.erro = ex.Message; throw; } bool? passou; string retornoInformacao; //------------- // Finally call the class to filter the countries with the specific routine provided classRef.RunAction(Parametro, out passou, out retornoInformacao); Result.passou = passou; Result.retornoInformacao = retornoInformacao; //MessageBox.Show(Result.passou.ToString() + Result.retornoInformacao); //List<string> targetValues = classRef.FilterCountries(lstSource); //List<string> targetValues = new List<String>(); ////------------- //// Move the result to the target listbox //lstTarget.Items.Clear(); //lstTarget.Items.AddRange(targetValues.ToArray()); return(Result); }