diff --git a/cmd/testsharder/main.go b/cmd/testsharder/main.go
index f0a57e4..9f61797 100644
--- a/cmd/testsharder/main.go
+++ b/cmd/testsharder/main.go
@@ -8,7 +8,6 @@
 	"flag"
 	"log"
 	"os"
-	"path/filepath"
 
 	"fuchsia.googlesource.com/infra/infra/fuchsia"
 	"fuchsia.googlesource.com/infra/infra/fuchsia/testexec"
@@ -39,10 +38,9 @@
 	}
 
 	// Load spec files.
-	pkgManifestPath := filepath.Join(fuchsiaBuildDir, fuchsia.PackageManifestName)
-	pkgs, err := fuchsia.LoadPackages(pkgManifestPath)
+	pkgs, err := fuchsia.LoadPackages(fuchsiaBuildDir)
 	if err != nil {
-		log.Fatalf("failed to load package manifest from %s: %v", pkgManifestPath, err)
+		log.Fatal(err)
 	}
 	specs, err := testexec.LoadTestSpecs(fuchsiaBuildDir, pkgs)
 	if err != nil {
@@ -50,10 +48,9 @@
 	}
 
 	// Load test platform environments.
-	platformManifestPath := filepath.Join(fuchsiaBuildDir, fuchsia.PlatformManifestName)
-	platforms, err := testexec.LoadPlatforms(platformManifestPath)
+	platforms, err := testexec.LoadPlatforms(fuchsiaBuildDir)
 	if err != nil {
-		log.Fatalf("failed to load test platforms from %s: %v", platformManifestPath, err)
+		log.Fatal(err)
 	}
 
 	// Verify that the produced specs specify valid test environments.
diff --git a/fuchsia/build.go b/fuchsia/build.go
index 3744984..f0d75b9 100644
--- a/fuchsia/build.go
+++ b/fuchsia/build.go
@@ -9,6 +9,7 @@
 import (
 	"encoding/json"
 	"os"
+	"path/filepath"
 )
 
 const (
@@ -40,8 +41,9 @@
 }
 
 // LoadPackages loads a list of packages targets from JSON package manifest
-// produced by the build.
-func LoadPackages(manifestPath string) ([]Target, error) {
+// produced by the build, given the root of the build directory.
+func LoadPackages(fuchsiaBuildDir string) ([]Target, error) {
+	manifestPath := filepath.Join(fuchsiaBuildDir, PackageManifestName)
 	manifestFile, err := os.Open(manifestPath)
 	if err != nil {
 		return nil, err
diff --git a/fuchsia/testexec/environment.go b/fuchsia/testexec/environment.go
index e4aac01..3d29147 100644
--- a/fuchsia/testexec/environment.go
+++ b/fuchsia/testexec/environment.go
@@ -13,6 +13,9 @@
 import (
 	"encoding/json"
 	"io/ioutil"
+	"path/filepath"
+
+	"fuchsia.googlesource.com/infra/infra/fuchsia"
 )
 
 // Environment describes the full environment a test requires.
@@ -46,9 +49,10 @@
 	return true
 }
 
-// LoadPlatforms loads the list of test platform dimension sets specified as a
-// JSON list at a given filepath.
-func LoadPlatforms(platformManifestPath string) ([]DimensionSet, error) {
+// LoadPlatforms loads the list of test platforms specified as a JSON list
+// produced by a build, given the root of the build directory.
+func LoadPlatforms(fuchsiaBuildDir string) ([]DimensionSet, error) {
+	platformManifestPath := filepath.Join(fuchsiaBuildDir, fuchsia.PlatformManifestName)
 	bytes, err := ioutil.ReadFile(platformManifestPath)
 	if err != nil {
 		return nil, err
