diff --git a/packages/cross_file/test/x_file_io_test.dart b/packages/cross_file/test/x_file_io_test.dart
index 25f46a4..94ac81c 100644
--- a/packages/cross_file/test/x_file_io_test.dart
+++ b/packages/cross_file/test/x_file_io_test.dart
@@ -11,17 +11,8 @@
 import 'package:flutter_test/flutter_test.dart';
 import 'package:cross_file/cross_file.dart';
 
-// Please note that executing this test with command
-// `flutter test test/x_file_io_test.dart` will set the directory
-// to ./file_selector_platform_interface.
-//
-// This will cause our hello.txt file to be not be found. Please
-// execute this test with `flutter test` or change the path prefix
-// to ./test/assets/
-//
-// https://github.com/flutter/flutter/issues/20907
-
-final pathPrefix = './assets/';
+final pathPrefix =
+    Directory.current.path.endsWith('test') ? './assets/' : './test/assets/';
 final path = pathPrefix + 'hello.txt';
 final String expectedStringContents = 'Hello, world!';
 final Uint8List bytes = Uint8List.fromList(utf8.encode(expectedStringContents));
@@ -30,7 +21,7 @@
 
 void main() {
   group('Create with a path', () {
-    final file = XFile(textFilePath);
+    final XFile file = XFile(textFilePath);
 
     test('Can be read as a string', () async {
       expect(await file.readAsString(), equals(expectedStringContents));
diff --git a/packages/image_picker/image_picker_platform_interface/CHANGELOG.md b/packages/image_picker/image_picker_platform_interface/CHANGELOG.md
index efcef01..581cf18 100644
--- a/packages/image_picker/image_picker_platform_interface/CHANGELOG.md
+++ b/packages/image_picker/image_picker_platform_interface/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 1.1.6
+
+* Fix test asset file location.
+
 ## 1.1.5
 
 * Update Flutter SDK constraint.
diff --git a/packages/image_picker/image_picker_platform_interface/pubspec.yaml b/packages/image_picker/image_picker_platform_interface/pubspec.yaml
index 7943a2a..b9ad12a 100644
--- a/packages/image_picker/image_picker_platform_interface/pubspec.yaml
+++ b/packages/image_picker/image_picker_platform_interface/pubspec.yaml
@@ -3,7 +3,7 @@
 homepage: https://github.com/flutter/plugins/tree/master/packages/image_picker/image_picker_platform_interface
 # NOTE: We strongly prefer non-breaking changes, even at the expense of a
 # less-clean API. See https://flutter.dev/go/platform-interface-breaking-changes
-version: 1.1.5
+version: 1.1.6
 
 dependencies:
   flutter:
diff --git a/packages/image_picker/image_picker_platform_interface/test/picked_file_io_test.dart b/packages/image_picker/image_picker_platform_interface/test/picked_file_io_test.dart
index 94ff759..28c0886 100644
--- a/packages/image_picker/image_picker_platform_interface/test/picked_file_io_test.dart
+++ b/packages/image_picker/image_picker_platform_interface/test/picked_file_io_test.dart
@@ -11,14 +11,17 @@
 import 'package:flutter_test/flutter_test.dart';
 import 'package:image_picker_platform_interface/image_picker_platform_interface.dart';
 
+final pathPrefix =
+    Directory.current.path.endsWith('test') ? './assets/' : './test/assets/';
+final path = pathPrefix + 'hello.txt';
 final String expectedStringContents = 'Hello, world!';
-final Uint8List bytes = utf8.encode(expectedStringContents);
-final File textFile = File('./assets/hello.txt');
+final Uint8List bytes = Uint8List.fromList(utf8.encode(expectedStringContents));
+final File textFile = File(path);
 final String textFilePath = textFile.path;
 
 void main() {
   group('Create with an objectUrl', () {
-    final pickedFile = PickedFile(textFilePath);
+    final PickedFile pickedFile = PickedFile(textFilePath);
 
     test('Can be read as a string', () async {
       expect(await pickedFile.readAsString(), equals(expectedStringContents));
