di = (-1,1,0,0)
dj = (0,0,-1,1)

def dfs(maze,i,j,visited,n,m):
    if maze[i][j]!='#':
        visited[i][j] = True
    else:
        return
    for d in range(4):
        ni = i+di[d]
        nj = j+dj[d]
        if (ni>=0) and (nj>=0) and (ni<n) and (nj<m) and (not visited[ni][nj]):
            dfs(maze,ni,nj,visited,n,m)
    return

cases = int(input())
for t in range(cases):
    n,m = list(map(int,input().split()))
    maze = [list(input()) for i in range(n)]
    gcount = 0
    f = 0

    for i in range(n):
        for j in range(m):
            if maze[i][j] == 'B':
                if j < m-1:
                    if maze[i][j+1] == 'G':
                        f = 1
                        break
                    elif maze[i][j+1] == '.':
                        maze[i][j+1] = '#'

                if j > 0:
                    if maze[i][j-1] == 'G':
                        f = 1
                        break
                    elif maze[i][j-1] == '.':
                        maze[i][j-1] = '#'

                if i < n-1:
                    if maze[i+1][j] == 'G':
                        f = 1
                        break
                    elif maze[i+1][j] == '.':
                        maze[i+1][j] = '#'

                if i > 0:
                    if maze[i-1][j] == 'G':
                        f = 1
                        break
                    elif maze[i-1][j] == '.':
                        maze[i-1][j] = '#'
            elif maze[i][j]=='G':
                gcount+=1
        if f == 1:
            break


    if maze[-1][-1] == '#':
        if gcount == 0:
            print('Yes')
        else:
            print('No')
        continue

    if f == 1:
        print('No')
        continue

    visited = [[False for j in range(m)] for i in range(n)]

    # print('do dfs gcount :',gcount)
    # print('here')
    dfs(maze,n-1,m-1,visited,n,m)
    # print(gc)
    # print(visited)
    # print(maze)
    f = 0
    for i in range(n):
        for j in range(m):
            if maze[i][j]=='G' and not visited[i][j]:
                f = 1
                break
        if f==1:
            break
    if f == 1:
        print('No')
    else:
        print("Yes")
