Should a Fact table contain a column with a single unique value? In order to simplify reporting, I am wondering if for each of the Fact tables we have, whether I can include a column that states the name of the Fact table, albeit in a more user friendly format

e.g.   

FACT_SALES    
Source     ID      Name   
Sales      1       Bob    
Sales      2       Terry
....

FACT_TESTING    
Source              ID      Type   
Product Testing     23      Adhoc   
Product_Testing     29      ...
...


If it should not, then what is an appropriate way of adding this information without requiring any action by the end user in terms of them having to add some sort of coding to show this?
What I recommend is that you have a fact_source table:

CREATE TABLE fact_source
(
  fact_source_id INTEGER,  -- auto-increment.
  fact_source_name VARCHAR (50)
);


Use your own RDBMS's (you didn't say which) own auto incrementing key system to generate the fact_source_id)

INSERT INTO fact_source fact_source_name) VALUES ('Sales'), ('Testing');


and use that as a FOREIGN KEY in the relevant tables.

You can then "pre-cook" your user-friendly (i.e. text) output in report queries if your testing shows that it works nicely and isn't a resource burden.

You should not use ENUMs for the reasons outlined here. Just because systems have features does not mean that you have to use them! You should always use either CHECK constraints (Unbelievably, MySQL doesn't have these) or a lookup table as described above. 

Storing your key as a SMALLINT (or similar) will save a bit of space!