Run tests on Go 1.18 (#290)

diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 5664da6..9a50673 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -2,14 +2,9 @@
 name: Test
 jobs:
   test:
-    env:
-      GOPATH: ${{ github.workspace }}
-    defaults:
-      run:
-        working-directory: ${{ env.GOPATH }}/src/github.com/${{ github.repository }}
     strategy:
       matrix:
-        go-version: [1.11.x, 1.12.x, 1.13.x, 1.14.x, 1.15.x, 1.16.x, 1.17.x]
+        go-version: [1.11.x, 1.12.x, 1.13.x, 1.14.x, 1.15.x, 1.16.x, 1.17.x, 1.18.x]
         os: [ubuntu-latest, macos-latest]
     runs-on: ${{ matrix.os }}
     steps:
@@ -19,12 +14,8 @@
         go-version: ${{ matrix.go-version }}
     - name: Checkout code
       uses: actions/checkout@v2
-      with:
-        path: ${{ env.GOPATH }}/src/github.com/${{ github.repository }}
-    - name: Checkout dependencies
-      run: go get golang.org/x/xerrors
     - name: Test
       run: go test -v -race ./...
     - name: Format
-      if: matrix.go-version == '1.17.x'
+      if: matrix.go-version == '1.18.x'
       run: diff -u <(echo -n) <(gofmt -d .)