#include <bits/stdc++.h>
using namespace std;
void Fast();
long long mf(long long x, long long mod);
long long mi(long long x, long long mod);
long long C(long long n, long long r, long long mod);
long long bpow(long long a, long long b, long long abs);
void Fast() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
}
long long mf(long long x, long long mod = 998244353) {
  if (x < 2) return 1;
  return (x * mf(x - 1)) % mod;
}
long long mi(long long x, long long mod = 998244353) {
  return bpow(x, mod - 2, mod);
}
long long C(long long x, long long y, long long mod = 998244353) {
  if (x < y) return 0;
  return (((mf(x) * mi(mf(y))) % mod) * mi(mf(x - y))) % mod;
}
long long bpow(long long x, long long y, long long mod) {
  x %= mod;
  long long res = 1;
  while (y > 0) {
    if (y & 1) {
      res = res * x % mod;
    }
    x = x * x % mod;
    y >>= 1;
  }
  return res;
}
int main() {
  Fast();
  long long q;
  cin >> q;
  while (q--) {
    long long n, ok = 1, ans = 0;
    cin >> n;
    string a, b;
    cin >> a >> b;
    for (long long i = 0; i < n; i++) {
      if (a[i] > b[i]) {
        ok = 0;
      }
    }
    if (!ok) {
      cout << -1 << "\n";
    } else {
      long long dd = 0;
      vector<vector<long long> > va(20);
      vector<vector<long long> > vb(20);
      for (long long i = 0; i < n; i++) {
        va[a[i] - 'a'].push_back(i);
      }
      for (long long i = 0; i < n; i++) {
        vb[b[i] - 'a'].push_back(i);
      }
      for (long long i = 0; i < 20; i++) {
        dd = 0;
        set<char> s;
        for (auto it : vb[i]) {
          if (a[it] != b[it]) {
            s.insert(a[it]);
          }
        }
        if (ok) {
          ans += s.size();
          if (s.size()) dd = 1;
        } else {
          break;
        }
        if (dd) {
          for (auto it : s) {
            for (long long j = 0; j < n; j++) {
              if (a[j] == it && a[j] != b[j]) {
                a[j] = (char)(i + 'a');
              }
            }
          }
        }
        if (a == b) {
          break;
        }
      }
      if (ok)
        cout << ans << "\n";
      else
        cout << -1 << "\n";
    }
  }
}
