#include <bits/stdc++.h>
using namespace std;
const long long int mod = 1e9 + 7;
const long long int N = 5e5 + 5;
const long long int inf = 1e16 + 2;
char arr[51][51];
bool check(long long int l, long long int r, long long int n, long long int m) {
  if (l - 1 >= 0) {
    if (arr[l - 1][r] == 'G') return 0;
    if (arr[l - 1][r] != 'B') arr[l - 1][r] = '#';
  }
  if (r - 1 >= 0) {
    if (arr[l][r - 1] == 'G') return 0;
    if (arr[l][r - 1] != 'B') arr[l][r - 1] = '#';
  }
  if (l + 1 < n) {
    if (arr[l + 1][r] == 'G') return 0;
    if (arr[l + 1][r] != 'B') arr[l + 1][r] = '#';
  }
  if (r + 1 < m) {
    if (arr[l][r + 1] == 'G') return 0;
    if (arr[l][r + 1] != 'B') arr[l][r + 1] = '#';
  }
  return 1;
}
long long int mark[51][51];
void dfs(long long int l, long long int r, long long int n, long long int m) {
  if (mark[l][r]) return;
  mark[l][r] = 1;
  if (l - 1 >= 0) {
    if (arr[l - 1][r] == '#')
      ;
    else
      dfs(l - 1, r, n, m);
  }
  if (r - 1 >= 0) {
    if (arr[l][r - 1] == '#')
      ;
    else
      dfs(l, r - 1, n, m);
  }
  if (l + 1 < n) {
    if (arr[l + 1][r] == '#')
      ;
    else
      dfs(l + 1, r, n, m);
  }
  if (r + 1 < m) {
    if (arr[l][r + 1] == '#')
      ;
    else
      dfs(l, r + 1, n, m);
  }
  return;
}
void solve(long long int ze) {
  long long int n, m, cnt = 0;
  cin >> n >> m;
  for (long long int i = 0; i < n; i++) {
    for (long long int j = 0; j < m; j++) {
      cin >> arr[i][j];
      if (arr[i][j] == 'G') cnt++;
      mark[i][j] = 0;
    }
  }
  if (arr[n - 1][m - 1] == 'B') {
    cout << "No" << '\n';
    return;
  }
  if (cnt == 0) {
    cout << "Yes" << '\n';
    return;
  }
  for (long long int i = 0; i < n; i++) {
    for (long long int j = 0; j < m; j++) {
      if (arr[i][j] == 'B') {
        if (!check(i, j, n, m)) {
          cout << "No" << '\n';
          return;
        }
      }
    }
  }
  if (arr[n - 1][m - 1] == '#') {
    cout << "No" << '\n';
    return;
  }
  dfs(n - 1, m - 1, n, m);
  for (long long int i = 0; i < n; i++) {
    for (long long int j = 0; j < m; j++) {
      if (arr[i][j] == 'G') {
        if (mark[i][j] == 0) {
          cout << "No" << '\n';
          return;
        }
      }
    }
  }
  cout << "Yes" << '\n';
}
int32_t main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long int testcase = 1;
  cin >> testcase;
  long long int x = 1;
  while (testcase--) {
    solve(x++);
  }
  return 0;
}
