Update test config helpers to handle teardown inline

Removed teardowns across tests

Closes https://github.com/google/webdriver.dart/pull/231

PiperOrigin-RevId: 353005152
diff --git a/test/async_alert_test.dart b/test/async_alert_test.dart
index 5a38b2d..7988041 100644
--- a/test/async_alert_test.dart
+++ b/test/async_alert_test.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.alert_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
 
@@ -27,20 +25,15 @@
     late WebDriver driver;
     late WebElement button;
     late WebElement output;
-    late HttpServer server;
 
     setUp(() async {
       driver = await config.createTestDriver();
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
+
       button = await driver.findElement(const By.tagName('button'));
       output = await driver.findElement(const By.id('settable'));
     });
 
-    tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
-    });
-
     test('no alert', () async {
       try {
         await driver.switchTo.alert.text;
diff --git a/test/async_command_event_test.dart b/test/async_command_event_test.dart
index 8c1d012..52ab877 100644
--- a/test/async_command_event_test.dart
+++ b/test/async_command_event_test.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.command_event_test;
 
-import 'dart:io';
-
 import 'package:stack_trace/stack_trace.dart';
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
@@ -26,7 +24,6 @@
 void main() {
   group('CommandEvent', () {
     late WebDriver driver;
-    late HttpServer server;
 
     var events = <WebDriverCommandEvent>[];
 
@@ -36,12 +33,10 @@
         events.add(e);
       });
 
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
     });
 
     tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
       events.clear();
     });
 
diff --git a/test/async_cookies_test.dart b/test/async_cookies_test.dart
index 95f8ccf..1403973 100644
--- a/test/async_cookies_test.dart
+++ b/test/async_cookies_test.dart
@@ -31,10 +31,6 @@
       await driver.get('http://www.google.com/ncr');
     });
 
-    tearDown(() async {
-      await driver.quit();
-    });
-
     test('add simple cookie and get', () async {
       await driver.cookies.add(Cookie('mycookie', 'myvalue'));
 
diff --git a/test/async_keyboard_test.dart b/test/async_keyboard_test.dart
index e1224cc..c030884 100644
--- a/test/async_keyboard_test.dart
+++ b/test/async_keyboard_test.dart
@@ -27,7 +27,6 @@
     late WebDriver driver;
     late WebElement textInput;
     String ctrlCmdKey = '';
-    late HttpServer server;
 
     setUp(() async {
       if (Platform.isMacOS) {
@@ -37,17 +36,13 @@
       }
 
       driver = await config.createTestDriver();
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
+
       textInput =
           await driver.findElement(const By.cssSelector('input[type=text]'));
       await textInput.click();
     });
 
-    tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
-    });
-
     test('sendKeys -- once', () async {
       await driver.keyboard.sendKeys('abcdef');
       expect(await textInput.properties['value'], 'abcdef');
diff --git a/test/async_logs_test.dart b/test/async_logs_test.dart
index e6b45a2..2836b21 100644
--- a/test/async_logs_test.dart
+++ b/test/async_logs_test.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.logs_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
 
@@ -25,7 +23,6 @@
 void main() {
   group('Logs', () {
     late WebDriver driver;
-    late HttpServer server;
 
     setUp(() async {
       Map<String, dynamic> capabilities = {
@@ -34,12 +31,7 @@
 
       driver =
           await config.createTestDriver(additionalCapabilities: capabilities);
-      server = await config.createTestServerAndGoToTestPage(driver);
-    });
-
-    tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
+      await config.createTestServerAndGoToTestPage(driver);
     });
 
     test('get logs', () async {
diff --git a/test/async_mouse_test.dart b/test/async_mouse_test.dart
index 35fc9ab..08c05c9 100644
--- a/test/async_mouse_test.dart
+++ b/test/async_mouse_test.dart
@@ -16,7 +16,6 @@
 library webdriver.mouse_test;
 
 import 'dart:async';
-import 'dart:io';
 
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
@@ -27,7 +26,6 @@
   group('Mouse', () {
     late WebDriver driver;
     late WebElement button;
-    late HttpServer server;
 
     Future<bool> hasAlert() async {
       try {
@@ -45,13 +43,9 @@
 
     setUp(() async {
       driver = await config.createTestDriver();
-      server = await config.createTestServerAndGoToTestPage(driver);
-      button = await driver.findElement(const By.tagName('button'));
-    });
+      await config.createTestServerAndGoToTestPage(driver);
 
-    tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
+      button = await driver.findElement(const By.tagName('button'));
     });
 
     test('moveTo element/click', () async {
diff --git a/test/async_navigation_test.dart b/test/async_navigation_test.dart
index f73f8e1..a684080 100644
--- a/test/async_navigation_test.dart
+++ b/test/async_navigation_test.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.navigation_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
 import 'package:webdriver/support/async.dart';
@@ -26,16 +24,10 @@
 void main() {
   group('Navigation', () {
     late WebDriver driver;
-    late HttpServer server;
 
     setUp(() async {
       driver = await config.createTestDriver();
-      server = await config.createTestServerAndGoToTestPage(driver);
-    });
-
-    tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
+      await config.createTestServerAndGoToTestPage(driver);
     });
 
     test('refresh', () async {
diff --git a/test/async_target_locator_test.dart b/test/async_target_locator_test.dart
index a7710f8..92ee3e9 100644
--- a/test/async_target_locator_test.dart
+++ b/test/async_target_locator_test.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.target_locator_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
 
@@ -28,19 +26,13 @@
   group('TargetLocator', () {
     late WebDriver driver;
     late WebElement frame;
-    late HttpServer server;
 
     setUp(() async {
       driver = await config.createTestDriver();
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
       frame = await driver.findElement(const By.id('frame'));
     });
 
-    tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
-    });
-
     test('frame index', () async {
       await driver.switchTo.frame(0);
       expect(await driver.pageSource, contains('this is a frame'));
diff --git a/test/async_timeouts_test.dart b/test/async_timeouts_test.dart
index 79082e7..0e67873 100644
--- a/test/async_timeouts_test.dart
+++ b/test/async_timeouts_test.dart
@@ -28,10 +28,6 @@
       driver = await config.createTestDriver();
     });
 
-    tearDown(() async {
-      await driver.quit();
-    });
-
     // TODO(DrMarcII): Figure out how to tell if timeouts are correctly set
     test('set all timeouts', () async {
       await driver.timeouts.setScriptTimeout(const Duration(seconds: 5));
diff --git a/test/async_web_driver_test.dart b/test/async_web_driver_test.dart
index f504dd7..533045c 100644
--- a/test/async_web_driver_test.dart
+++ b/test/async_web_driver_test.dart
@@ -16,7 +16,6 @@
 library webdriver.web_driver_test;
 
 import 'dart:async';
-import 'dart:io';
 
 import 'package:test/test.dart';
 import 'package:webdriver/core.dart';
@@ -28,30 +27,21 @@
     group('create', () {
       test('default', () async {
         WebDriver driver = await config.createTestDriver();
-        final server = await config.createTestServerAndGoToTestPage(driver);
+        await config.createTestServerAndGoToTestPage(driver);
         var element = await driver.findElement(const By.tagName('button'));
         expect(await element.name, 'button');
-        await driver.quit();
-        await server.close(force: true);
       });
     });
 
     group('methods', () {
       late WebDriver driver;
-      late HttpServer server;
 
       setUp(() async {
         driver = await config.createTestDriver();
-        server = await config.createTestServerAndGoToTestPage(driver);
-      });
-
-      tearDown(() async {
-        await driver.quit();
-        await server.close(force: true);
+        await config.createTestServerAndGoToTestPage(driver);
       });
 
       test('get', () async {
-        server = await config.createTestServerAndGoToTestPage(driver);
         await driver.findElement(const By.tagName('button'));
       });
 
diff --git a/test/async_web_element_test.dart b/test/async_web_element_test.dart
index 6fe19b8..9a85aff 100644
--- a/test/async_web_element_test.dart
+++ b/test/async_web_element_test.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.web_element_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
 
@@ -34,11 +32,10 @@
     late WebElement disabled;
     late WebElement invisible;
     late WebElement inner;
-    late HttpServer server;
 
     setUp(() async {
       driver = await config.createTestDriver();
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
       table = await driver.findElement(const By.tagName('table'));
       button = await driver.findElement(const By.tagName('button'));
       form = await driver.findElement(const By.tagName('form'));
@@ -54,11 +51,6 @@
       inner = await driver.findElement(const By.id('inner-div'));
     });
 
-    tearDown(() async {
-      await driver.quit();
-      await server.close(force: true);
-    });
-
     test('click', () async {
       await button.click();
       var alert = driver.switchTo.alert;
diff --git a/test/async_window_test.dart b/test/async_window_test.dart
index 3b15896..a3f1568 100644
--- a/test/async_window_test.dart
+++ b/test/async_window_test.dart
@@ -32,10 +32,6 @@
       driver = await config.createTestDriver();
     });
 
-    tearDown(() async {
-      await driver.quit();
-    });
-
     test('size', () async {
       var window = await driver.window;
       var size = const Rectangle<int>(0, 0, 600, 400);
diff --git a/test/configs/async_io_config.dart b/test/configs/async_io_config.dart
index b786310..d4141e0 100644
--- a/test/configs/async_io_config.dart
+++ b/test/configs/async_io_config.dart
@@ -15,7 +15,7 @@
 import 'dart:async' show Future;
 import 'dart:io';
 
-import 'package:matcher/matcher.dart';
+import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart'
     show WebDriver, WebDriverSpec, WebElement;
 import 'package:webdriver/async_io.dart' show createDriver;
@@ -26,19 +26,29 @@
 
 final Matcher isWebElement = const TypeMatcher<WebElement>();
 
-Future<WebDriver> createTestDriver(
-    {Map<String, dynamic>? additionalCapabilities,
-    WebDriverSpec spec = defaultSpec}) {
+Future<WebDriver> createTestDriver({
+  Map<String, dynamic>? additionalCapabilities,
+  WebDriverSpec spec = defaultSpec,
+}) async {
   final capabilities = getCapabilities(spec);
   if (additionalCapabilities != null) {
     capabilities.addAll(additionalCapabilities);
   }
 
-  return createDriver(
-      desired: capabilities, uri: getWebDriverUri(spec), spec: spec);
+  final driver = await createDriver(
+    desired: capabilities,
+    uri: getWebDriverUri(spec),
+    spec: spec,
+  );
+
+  addTearDown(() async {
+    await driver.quit();
+  });
+
+  return driver;
 }
 
-Future<HttpServer> createTestServerAndGoToTestPage(WebDriver driver) async {
+Future<void> createTestServerAndGoToTestPage(WebDriver driver) async {
   final server = await createLocalServer();
   server.listen((request) {
     if (request.method == 'GET' && request.uri.path.endsWith('.html')) {
@@ -63,5 +73,7 @@
 
   await driver.get('http://$testHostname:${server.port}/test_page.html');
 
-  return server;
+  addTearDown(() async {
+    await server.close(force: true);
+  });
 }
diff --git a/test/configs/sync_io_config.dart b/test/configs/sync_io_config.dart
index f99ffca..46abb5c 100644
--- a/test/configs/sync_io_config.dart
+++ b/test/configs/sync_io_config.dart
@@ -15,8 +15,8 @@
 import 'dart:async';
 import 'dart:io';
 
-import 'package:matcher/matcher.dart';
 import 'package:path/path.dart' as path;
+import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart'
     show WebDriver, WebDriverSpec, WebElement;
 import 'package:webdriver/sync_io.dart' show createDriver;
@@ -27,19 +27,27 @@
 
 final Matcher isWebElement = const TypeMatcher<WebElement>();
 
-WebDriver createTestDriver(
-    {Map<String, dynamic>? additionalCapabilities,
-    WebDriverSpec spec = defaultSpec}) {
+WebDriver createTestDriver({
+  Map<String, dynamic>? additionalCapabilities,
+  WebDriverSpec spec = defaultSpec,
+}) {
   final capabilities = getCapabilities(spec);
   if (additionalCapabilities != null) {
     capabilities.addAll(additionalCapabilities);
   }
 
-  return createDriver(
-      desired: capabilities, uri: getWebDriverUri(spec), spec: spec);
+  final driver = createDriver(
+    desired: capabilities,
+    uri: getWebDriverUri(spec),
+    spec: spec,
+  );
+
+  addTearDown(driver.quit);
+
+  return driver;
 }
 
-Future<HttpServer> createTestServerAndGoToTestPage(WebDriver driver) async {
+Future<void> createTestServerAndGoToTestPage(WebDriver driver) async {
   final server = await createLocalServer();
   server.listen((request) {
     if (request.method == 'GET' && request.uri.path.endsWith('.html')) {
@@ -63,10 +71,13 @@
   });
 
   // TODO(b/140553567): Use sync driver when we have a separate server.
-  await driver.asyncDriver
-      .get('http://$testHostname:${server.port}/test_page.html');
+  await driver.asyncDriver.get(
+    'http://$testHostname:${server.port}/test_page.html',
+  );
 
-  return server;
+  addTearDown(() async {
+    await server.close(force: true);
+  });
 }
 
 Uri get testPagePath => path.toUri(path.join(testHomePath, 'test_page.html'));
diff --git a/test/sync/alert.dart b/test/sync/alert.dart
index 507b588..d85dbc3 100644
--- a/test/sync/alert.dart
+++ b/test/sync/alert.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.alert_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart';
 
@@ -27,20 +25,15 @@
     late WebDriver driver;
     late WebElement button;
     late WebElement output;
-    late HttpServer server;
 
     setUp(() async {
       driver = config.createTestDriver(spec: spec);
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
+
       button = driver.findElement(const By.tagName('button'));
       output = driver.findElement(const By.id('settable'));
     });
 
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
-    });
-
     test('no alert', () {
       try {
         driver.switchTo.alert.text;
diff --git a/test/sync/basic_sync.dart b/test/sync/basic_sync.dart
index 02118d4..394377a 100644
--- a/test/sync/basic_sync.dart
+++ b/test/sync/basic_sync.dart
@@ -27,10 +27,6 @@
       driver = config.createTestDriver(spec: spec);
     });
 
-    tearDown(() {
-      driver.quit();
-    });
-
     test('can do basic post', () {
       driver.get(config.testPagePath); // This is POST to WebDriver.
     });
diff --git a/test/sync/command_event.dart b/test/sync/command_event.dart
index a17da7d..631d509 100644
--- a/test/sync/command_event.dart
+++ b/test/sync/command_event.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.command_event_test;
 
-import 'dart:io';
-
 import 'package:stack_trace/stack_trace.dart';
 import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart';
@@ -26,7 +24,6 @@
 void runTests({WebDriverSpec spec = WebDriverSpec.Auto}) {
   group('CommandEvent', () {
     late WebDriver driver;
-    late HttpServer server;
 
     var events = <WebDriverCommandEvent>[];
 
@@ -34,14 +31,11 @@
       driver = config.createTestDriver(spec: spec);
       driver.addEventListener(events.add);
 
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
     });
 
     tearDown(() async {
-      driver.quit();
       events.clear();
-
-      await server.close(force: true);
     });
 
     test('handles exceptions', () {
diff --git a/test/sync/cookies.dart b/test/sync/cookies.dart
index 2f3c269..b19e47a 100644
--- a/test/sync/cookies.dart
+++ b/test/sync/cookies.dart
@@ -31,10 +31,6 @@
       driver.get('http://www.google.com/ncr');
     });
 
-    tearDown(() {
-      driver.quit();
-    });
-
     test('add simple cookie and get', () {
       driver.cookies.add(Cookie('mycookie', 'myvalue'));
 
diff --git a/test/sync/keyboard.dart b/test/sync/keyboard.dart
index 545ac72..fca001e 100644
--- a/test/sync/keyboard.dart
+++ b/test/sync/keyboard.dart
@@ -26,7 +26,6 @@
   group('Keyboard', () {
     late WebDriver driver;
     late WebElement textInput;
-    late HttpServer server;
     String ctrlCmdKey = '';
 
     setUp(() async {
@@ -37,16 +36,12 @@
       }
 
       driver = config.createTestDriver(spec: spec);
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
+
       textInput = driver.findElement(const By.cssSelector('input[type=text]'));
       textInput.click();
     });
 
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
-    });
-
     test('sendKeys -- once', () {
       driver.keyboard.sendKeys('abcdef');
       expect(textInput.properties['value'], 'abcdef');
diff --git a/test/sync/logs.dart b/test/sync/logs.dart
index 24b2797..ad295dc 100644
--- a/test/sync/logs.dart
+++ b/test/sync/logs.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.logs_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart';
 
@@ -25,7 +23,6 @@
 void runTests({WebDriverSpec spec = WebDriverSpec.Auto}) {
   group('Logs', () {
     late WebDriver driver;
-    late HttpServer server;
 
     setUp(() async {
       Map<String, dynamic> capabilities = {
@@ -33,13 +30,10 @@
       };
 
       driver = config.createTestDriver(
-          spec: spec, additionalCapabilities: capabilities);
-      server = await config.createTestServerAndGoToTestPage(driver);
-    });
-
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
+        spec: spec,
+        additionalCapabilities: capabilities,
+      );
+      await config.createTestServerAndGoToTestPage(driver);
     });
 
     test('get logs', () {
diff --git a/test/sync/mouse.dart b/test/sync/mouse.dart
index 372b3cd..d60a411 100644
--- a/test/sync/mouse.dart
+++ b/test/sync/mouse.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.mouse_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart';
 
@@ -26,7 +24,6 @@
   group('Mouse', () {
     late WebDriver driver;
     late WebElement button;
-    late HttpServer server;
 
     bool hasAlert() {
       try {
@@ -44,15 +41,10 @@
 
     setUp(() async {
       driver = config.createTestDriver(spec: spec);
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
       button = driver.findElement(const By.tagName('button'));
     });
 
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
-    });
-
     test('moveTo element/click', () {
       driver.mouse.moveTo(element: button);
       expect(mouseOnButton(), true);
diff --git a/test/sync/navigation.dart b/test/sync/navigation.dart
index 49f892d..857be04 100644
--- a/test/sync/navigation.dart
+++ b/test/sync/navigation.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.navigation_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart';
 
@@ -25,16 +23,10 @@
 void runTests({WebDriverSpec spec = WebDriverSpec.Auto}) {
   group('Navigation', () {
     late WebDriver driver;
-    late HttpServer server;
 
     setUp(() async {
       driver = config.createTestDriver(spec: spec);
-      server = await config.createTestServerAndGoToTestPage(driver);
-    });
-
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
+      await config.createTestServerAndGoToTestPage(driver);
     });
 
     test('refresh', () async {
diff --git a/test/sync/spec_inference_test.dart b/test/sync/spec_inference_test.dart
index 81aa568..2120943 100644
--- a/test/sync/spec_inference_test.dart
+++ b/test/sync/spec_inference_test.dart
@@ -24,18 +24,9 @@
   group('Spec inference', () {
     WebDriver? driver;
 
-    setUp(() {});
-
-    tearDown(() {
-      if (driver != null) {
-        driver!.quit();
-      }
-      driver = null;
-    });
-
     test('chrome works', () async {
       driver = config.createTestDriver(spec: WebDriverSpec.W3c);
-      final server = await config.createTestServerAndGoToTestPage(driver!);
+      await config.createTestServerAndGoToTestPage(driver!);
       final button = driver!.findElement(const By.tagName('button'));
       try {
         button.findElement(const By.tagName('tr'));
@@ -44,13 +35,11 @@
         expect(e, const TypeMatcher<NoSuchElementException>());
         expect(e.toString(), contains('Unable to locate element'));
       }
-
-      await server.close(force: true);
     });
 
     test('firefox work', () async {
       driver = config.createTestDriver(spec: WebDriverSpec.JsonWire);
-      final server = await config.createTestServerAndGoToTestPage(driver!);
+      await config.createTestServerAndGoToTestPage(driver!);
       final button = driver!.findElement(const By.tagName('button'));
       try {
         button.findElement(const By.tagName('tr'));
@@ -59,8 +48,6 @@
         expect(e, const TypeMatcher<NoSuchElementException>());
         expect(e.toString(), contains('Unable to locate element'));
       }
-
-      await server.close(force: true);
     });
   }, timeout: const Timeout(Duration(minutes: 2)));
 }
diff --git a/test/sync/sync_async_interop.dart b/test/sync/sync_async_interop.dart
index fa68f7b..d611785 100644
--- a/test/sync/sync_async_interop.dart
+++ b/test/sync/sync_async_interop.dart
@@ -14,8 +14,6 @@
 
 library webdriver.support.async_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart' as async_core;
 import 'package:webdriver/sync_io.dart';
@@ -27,19 +25,13 @@
   group('Sync-async interop', () {
     late WebDriver driver;
     async_core.WebDriver asyncDriver;
-    late HttpServer server;
 
     setUp(() async {
       driver = config.createTestDriver(spec: spec);
 
       asyncDriver = driver.asyncDriver;
       expect(asyncDriver, const TypeMatcher<async_core.WebDriver>());
-      server = await async_config.createTestServerAndGoToTestPage(asyncDriver);
-    });
-
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
+      await async_config.createTestServerAndGoToTestPage(asyncDriver);
     });
 
     test('sync to async driver works', () async {
diff --git a/test/sync/target_locator.dart b/test/sync/target_locator.dart
index c713d2c..b28299b 100644
--- a/test/sync/target_locator.dart
+++ b/test/sync/target_locator.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.target_locator_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart';
 
@@ -28,17 +26,12 @@
   group('TargetLocator', () {
     late WebDriver driver;
     late WebElement frame;
-    late HttpServer server;
 
     setUp(() async {
       driver = config.createTestDriver(spec: spec);
-      server = await config.createTestServerAndGoToTestPage(driver);
-      frame = driver.findElement(const By.id('frame'));
-    });
+      await config.createTestServerAndGoToTestPage(driver);
 
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
+      frame = driver.findElement(const By.id('frame'));
     });
 
     test('frame index', () {
diff --git a/test/sync/timeouts.dart b/test/sync/timeouts.dart
index 16f2a4d..4ae1306 100644
--- a/test/sync/timeouts.dart
+++ b/test/sync/timeouts.dart
@@ -28,10 +28,6 @@
       driver = config.createTestDriver(spec: spec);
     });
 
-    tearDown(() {
-      driver.quit();
-    });
-
     // TODO(DrMarcII): Figure out how to tell if timeouts are correctly set
     test('set all timeouts', () {
       driver.timeouts.setScriptTimeout(const Duration(seconds: 5));
diff --git a/test/sync/web_driver.dart b/test/sync/web_driver.dart
index 39198f3..ad9317b 100644
--- a/test/sync/web_driver.dart
+++ b/test/sync/web_driver.dart
@@ -27,26 +27,18 @@
     group('create', () {
       test('default', () async {
         WebDriver driver = config.createTestDriver(spec: spec);
-        final server = await config.createTestServerAndGoToTestPage(driver);
+        await config.createTestServerAndGoToTestPage(driver);
         var element = driver.findElement(const By.tagName('button'));
         expect(element.name, 'button');
-        driver.quit();
-        await server.close(force: true);
       });
     });
 
     group('methods', () {
       late WebDriver driver;
-      late HttpServer server;
 
       setUp(() async {
         driver = config.createTestDriver(spec: spec);
-        server = await config.createTestServerAndGoToTestPage(driver);
-      });
-
-      tearDown(() async {
-        driver.quit();
-        await server.close(force: true);
+        await config.createTestServerAndGoToTestPage(driver);
       });
 
       test('get', () {
diff --git a/test/sync/web_element.dart b/test/sync/web_element.dart
index bf51993..b46e713 100644
--- a/test/sync/web_element.dart
+++ b/test/sync/web_element.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.web_element_test;
 
-import 'dart:io';
-
 import 'package:test/test.dart';
 import 'package:webdriver/sync_core.dart';
 
@@ -34,11 +32,11 @@
     late WebElement disabled;
     late WebElement invisible;
     late WebElement inner;
-    late HttpServer server;
 
     setUp(() async {
       driver = config.createTestDriver(spec: spec);
-      server = await config.createTestServerAndGoToTestPage(driver);
+      await config.createTestServerAndGoToTestPage(driver);
+
       table = driver.findElement(const By.tagName('table'));
       button = driver.findElement(const By.tagName('button'));
       form = driver.findElement(const By.tagName('form'));
@@ -52,11 +50,6 @@
       inner = driver.findElement(const By.id('inner-div'));
     });
 
-    tearDown(() async {
-      driver.quit();
-      await server.close(force: true);
-    });
-
     test('click', () {
       button.click();
       var alert = driver.switchTo.alert;
diff --git a/test/sync/window.dart b/test/sync/window.dart
index 7872271..bee3b07 100644
--- a/test/sync/window.dart
+++ b/test/sync/window.dart
@@ -31,10 +31,6 @@
       driver = config.createTestDriver(spec: spec);
     });
 
-    tearDown(() {
-      driver.quit();
-    });
-
     test('size', () {
       var window = driver.window;
       var windowRect = const Rectangle<int>(0, 0, 600, 400);