È disponibile uno strumento da riga di comando per il quale è necessario scrivere test automatici. Il nostro framework di test è scritto in C# e stavo cercando le librerie .NET che mi avrebbero permesso di fare l'automazione (so che posso usare la classe Process, reindirizzare l'IO, fare la validazione, ma non voglio reinventare la ruota se possibile). Idealmente sto cercando qualcosa come una libreria expect. Eventuali suggerimenti?Automazione della riga di comando - prevedere l'equivalente
risposta
Mi rendo conto che questa è una domanda vecchia, ma nessuno ha risposto.
IMO, ho sempre dovuto reinventare la ruota ogni volta che ho fatto questo (vale a dire la classe di processo, reindirizzare StdIO, StdErr, ecc. E analizzare l'output). Pensiero, ho riutilizzato una classe base astratta per questo scopo.
Forse qualcun altro sa di una biblioteca per farlo, ma io no.
Tuttavia, avvertirò che ho visto casi in cui il reindirizzamento dell'IO non è sempre gestito correttamente nel framework .Net (a seconda di come il programma scrive su stdio o stderr, se si nasconde la finestra o no , se si esegue il multi-threading e alcune altre condizioni) che portano a una condizione di competizione che si traduce in un blocco indefinito.
http://blog.iwanek.eu/expect-net/
using ExpectNet;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace ExampleApp
{
class Program
{
static void Main(string[] args)
{
try
{
Console.WriteLine("ExampleApp");
Session spawn = Expect.Spawn(new ProcessSpawnable("cmd.exe"));
spawn.Expect("c:", s => Console.WriteLine("got: " + s));
}
}
}
- 1. Recupero della cronologia della riga di comando
- 2. Automazione dell'importazione di progetti Java (Android) nell'area di lavoro di Eclipse tramite riga di comando
- 3. Firma un progetto/file VBA di Word tramite riga di comando o altra forma di automazione
- 4. Argomenti della riga di comando di Eclipse
- 5. PowerWare Powershell finestra di comando della riga di comando ISO
- 6. interattive lua: argomenti della riga di comando
- 7. args.length e della riga di comando argomenti
- 8. Opzioni della riga di comando Clang consigliate
- 9. argomenti della riga di comando con leiningen
- 10. Google OAuth2 della riga di comando esempio
- 11. Interfaccia della riga di comando C++
- 12. Argomenti della riga di comando in python.
- 13. Esecuzione della riga di comando in Java
- 14. Completamento automatico argomenti della riga di comando
- 15. C++ e opzioni della riga di comando
- 16. Java Argomenti della riga di comando
- 17. Haskell: Parsing argomenti della riga di comando
- 18. Argomenti della riga di comando Python (Windows)
- 19. Argomenti della riga di comando nell'applicazione C#
- 20. Errore riga di comando D8016: le opzioni della riga di comando '/ O2' e '/ RTC1' sono incompatibili
- 21. Silverlight: come prevedere la dimensione della stringa?
- 22. PowerShell comando passaggio argomenti della riga
- 23. Conversione da riga di comando a immagine da riga di comando
- 24. Automazione di Chrome
- 25. Avviare una versione hardware specifica del simulatore iOS utilizzando l'utilità della riga di comando dello strumento
- 26. misura momento della riga di comando di esecuzione chiama
- 27. Come aggirare il limite di lunghezza della riga di comando?
- 28. parametri della riga di comando di passaggio in corsa compito
- 29. I thread di supporto della riga di comando lua?
- 30. Installazione di IIS8 con i parametri della riga di comando