Gitlab runner affinity for next task in build pipeline

Hi, I am new to Gitlab and I setup my classic build pipeline (build, test, deploy). The build step creates an application of around 1GB (500 MB as zipped artifact). The artifact is uploaded to the server and the next gitlab runner downloads it again to test it. Is there a way to set an “affinity” for a gitlab runner, so exactly the machine which just built it can continue using the binaries to test it?

One option would be to merge the build and test step into a single one, but I am looking for alternatives. Thank you!

I think you shall try to use cache instead of artifact: https://docs.gitlab.com/ee/ci/yaml/#cache