Can the test set of attributes be a subset of the training set's attributes?
Well, if the test data would be the same from training data, your machine learning algorithm may overfit. Because you test your model with your training data it may perform very well, as it may see the pattern even in noise. And then it won't generalize on new data.

You should separate the test data (with which you see the accuracy) to the training data.