Wie kann ich Unit-Tests für mehrere Programmiersprachen dynamisch als Strings generieren und ausführen? [geschlossen]
Posted: 03 Jan 2025, 14:12
Ich baue ein System zur Validierung von Problemlösungen durch die Ausführung von Unit-Tests auf. Das System unterstützt mehrere Programmiersprachen und ich muss Komponententests dynamisch für jede Sprache generieren.
Beispielanwendungsfall:
Für eine Python-Funktion ist_palindrome die vordefinierte Basistestfälle sind wie folgt:
Wenn der Benutzer die folgenden benutzerdefinierten Testfälle bereitstellt:
Ich muss zusätzliche Testmethoden dynamisch generieren:
Das endgültige Testskript sollte sowohl vordefinierte als auch vom Benutzer bereitgestellte Testfälle enthalten.
Generieren Sie ähnliche Testfälle für andere Sprachen, einschließlich Java, JavaScript, C++ usw.
Konvertieren Sie diese Testfälle in Strings, um sie an eine Ausführungs-API zu senden.
Fragen:
Ist es besser? Testfälle dynamisch generieren oder vordefinierte Vorlagen für jede Sprache verwalten und Benutzerdefinierte Fälle anhängen?
Wie kann ich benutzerdefinierte Testfälle sicher und effizient verarbeiten, um Leistungsengpässe zu vermeiden?
Gibt es eine optimierte Möglichkeit zum Generieren? Testfälle für mehrere Sprachen mit Python?
Beispielanwendungsfall:
Für eine Python-Funktion ist_palindrome die vordefinierte Basistestfälle sind wie folgt:
Code: Select all
import unittest
class TestPalindrome(unittest.TestCase):
def test_base_cases(self):
self.assertTrue(is_palindrome("radar"))
self.assertFalse(is_palindrome("hello"))
Code: Select all
[
{ "input": "'level'", "expected_output": "True" },
{ "input": "'world'", "expected_output": "False" }
]
Code: Select all
def test_custom_0(self):
self.assertEqual(is_palindrome('level'), True)
def test_custom_1(self):
self.assertEqual(is_palindrome('world'), False)
Generieren Sie ähnliche Testfälle für andere Sprachen, einschließlich Java, JavaScript, C++ usw.
Konvertieren Sie diese Testfälle in Strings, um sie an eine Ausführungs-API zu senden.
Fragen:
Ist es besser? Testfälle dynamisch generieren oder vordefinierte Vorlagen für jede Sprache verwalten und Benutzerdefinierte Fälle anhängen?
Wie kann ich benutzerdefinierte Testfälle sicher und effizient verarbeiten, um Leistungsengpässe zu vermeiden?
Gibt es eine optimierte Möglichkeit zum Generieren? Testfälle für mehrere Sprachen mit Python?