Why there are miner fees now? I understand the mining fee will be the major incentive when the Bitcoin supply hit its limit of 21m. But right now, new coins are still being minted and are much higher than any fee can compansate. Shouldn't the fee calculation be a WIP improvement protocol that needs to be worked on in the Testnet rather than causing huge innefficeny in the Main Bitcoin network?

I am very sorry if it is naive to think that, but I see that many debates on Bitcoin's future are based on the high amount of miner fees or the long waiting time for confirmations. 

Why shouldn't miners just add the transactions randomly and just incentivized by the reward? 

I believe the mainstream usage adoption will be provided by the people who can't afford the current miner fees, but still wish there could be a way to actually use the network at least in a fair way where the highest fee couldn't win the confirmation race.

To sum up, I am wondering, why the fee structure shouldn't be tested and worked on on the Tesnet until a good protocol for fee calculation has been developed, and in the main network miners just incentivized by the reward and add the transactions in blocks randomly or by First In First Out method or by some other criteria rather than fee?
Fees are there because of penny-flooding attack, which is a praticular kind of denial-of-service.

Without fees you would have a situation in which an attacker can fill the memory pool with 0-costs pending transactions, which would cause a sensible service degradation. 

An attacker could move its funds between addresses of its own, spamming thousands of transactions on the network without losing anything. The memory pool would grow until filled, and since miners are not able to discriminate between honest transactions and malicious transactions, this will result in no (or few) honest transactions being processed and included in the chain.

By adding a fee you are adding a cost to such attack. An attacker is no longer able to generate thousands (or more) of fake transactions at no costs.